京アニ 不動産テロに かかった 資金繰りは裁判所は導いてないな
[匿名さん]
?
Good!
?
Bad
やりそうだ 予測がされていたなら 接近中直ちに現場から
離れた奴いただろ
[匿名さん]
?
Good!
?
Bad
www.bamsoftware.com/hacks/zipbomb/
じゃ?
[匿名さん]
?
Good!
?
Bad
github.com/abdulfatir/ZipBomb?tab=readme-ov-file
10.4秒?
[匿名さん]
?
Good!
?
Bad
「殺し合い」発言で希望が見えるか?
とりあえず差し入れ行くわ
[匿名さん]
?
Good!
?
Bad
そもそも 漫画ハウス も 某小説家 藤子不二雄
やられて落ちた作品をみんな見て育ってますから汗
[匿名さん]
?
Good!
?
Bad
このプログラムでは、Node.jsの`fs`モジュールと`archiver`パッケージを使用しています。まず、`zipDirectory`関数を定義し、指定されたディレクトリ内のファイルをZIPアーカイブに圧縮します。`source`は圧縮するディレクトリのパス、`out`は出力ZIPファイルのパスです。
`zipDirectory`関数はPromiseを返し、圧縮が完了したら`resolve`を呼び出します。エラーが発生した場合は`reject`を呼び出します。
最後の部分では、圧縮するディレクトリのパスと出力ZIPファイルのパスを指定し、`zipDirectory`関数を呼び出します。圧縮が完了したら「ZIP圧縮が完了しました」と表示されます。エラーが発生した場合は、エラーメッセージが表示されます。
この例では、Node.jsのランタイム環境が必要です。また、`archiver`パッケージをインストールする必要があります。インストールするには、コマンドラインで以下のコマンドを実行します。
npm install archiver
上記のプログラムを使用すると、指定したディレクトリ内のファイルを再帰的に圧縮できます。
aiに聞いた
[匿名さん]
?
Good!
?
Bad
javascript
const fs = require('fs');
const archiver = require('archiver');
function zipDirectory(source, out) {
const archive = archiver('zip', { zlib: { level: 9 } });
const stream = fs.createWriteStream(out);
return new Promise((resolve, reject) => {
archive
.directory(source, false)
.on('error', (err) => reject(err))
.pipe(stream);
stream.on('close', () => resolve());
archive.finalize();
});
}
const sourceDir = 'path/to/source/directory';
const outputZip = 'path/to/output.zip';
zipDirectory(sourceDir, outputZip)
.then(() => {
console.log('ZIP compression complete.');
})
.catch((err) => {
console.error('Error compressing directory:', err);
});
[匿名さん]
?
Good!
?
Bad
javascript
const fs = require('fs');
const unzipper = require('unzipper');
function unzipRecursive(zipFile, outputDir) {
return new Promise((resolve, reject) => {
fs.createReadStream(zipFile)
.pipe(unzipper.Parse())
.on('entry', (entry) => {
const filePath = entry.path;
const fullPath = `${outputDir}/${filePath}`;
if (entry.type === 'Directory') {
fs.mkdirSync(fullPath, { recursive: true });
} else {
entry.pipe(fs.createWriteStream(fullPath));
}
})
.on('error', (err) => reject(err))
.on('close', () => resolve());
});
}
const zipFile = 'path/to/input.zip';
const outputDir = 'path/to/output/directory';
unzipRecursive(zipFile, outputDir)
.then(() => {
console.log('ZIP extraction complete.');
})
.catch((err) => {
console.error('Error extracting ZIP file:', err);
});
[匿名さん]
?
Good!
?
Bad
javascript
// Deflate圧縮
function deflateCompress(data) {
var deflate = new Zlib.Deflate(data);
var compressedData = deflate.compress();
return compressedData;
}
// Deflate解凍
function deflateDecompress(compressedData) {
var inflate = new Zlib.Inflate(compressedData);
var decompressedData = inflate.decompress();
return decompressedData;
}
// テストデータ
var testData = "Hello, world!";
// 圧縮
var compressed = deflateCompress(testData);
console.log("Compressed Data: " + compressed);
// 解凍
var decompressed = deflateDecompress(compressed);
console.log("Decompressed Data: " + decompressed);
[匿名さん]
?
Good!
?
Bad
青葉信二は控訴したぞ
図々しくもしたぞ
世間知らずだ
[匿名さん]
?
Good!
?
Bad
青葉先生は実行者の勇者!
ここで文句を垂れる輩と大違い!
週末差し入れ行くぜ!
[匿名さん]
?
Good!
?
Bad
npm install adm-zip
それでは具体的なコードを見てみましょう。
const fs = require('fs');
const AdmZip = require('adm-zip');
// zipファイルを読み込む
const zip = new AdmZip("./path_to_your_zip.zip");
// zipを解凍
const zipEntries = zip.getEntries();
// キャッシュ用オブジェクト
let cache = {};
zipEntries.forEach(zipEntry => {
// 各ファイルの内容をキャッシュに保存
cache[zipEntry.entryName] = zipEntry.getData().toString('utf8');
});
// キャッシュ内を表示
console.log(cache);
[匿名さん]
?
Good!
?
Bad
const AdmZip = require('adm-zip');
const fs = require('fs');
const path = require('path');
function extractZip(filePath, extractTo) {
let zip = new AdmZip(filePath);
zip.extractAllTo(/*target path*/extractTo, /*overwrite*/true);
}
function recursiveExtract(dirPath) {
fs.readdirSync(dirPath).forEach(file => {
let fullPath = path.join(dirPath, file);
let fileExt = path.extname(fullPath);
if (fileExt === '.zip') {
let extractToPath = fullPath.replace('.zip','');
extractZip(fullPath, extractToPath);
recursiveExtract(extractToPath);
}
else if (fs.lstatSync(fullPath).isDirectory()) {
recursiveExtract(fullPath);
}
});
}
// 使用例
recursiveExtract('/path/to/your/dir');
[匿名さん]
?
Good!
?
Bad
たんなる千鶴子と電気設備に関する技術基準を定める省令二十二条
感電やっちまった らんらんらんにしか見えない ですが?
[匿名さん]
?
Good!
?
Bad