問題タブ [zipfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
6078 参照

binary - パスワードで保護されたZIPファイルのバイト署名とは何ですか?

ZIPファイルが次のバイトで始まることを読みました。

参照:http ://www.garykessler.net/library/file_sigs.html

質問:ZIPファイルがパスワードで保護されていることを示す特定のバイトシーケンスはありますか?

0 投票する
3 に答える
7931 参照

java - byte[] から読み取ったときに ZipFile エントリのコンテンツを抽出する (Java)

コンテンツが byte[] として表示される zip ファイルがありますが、元のファイル オブジェクトにアクセスできません。それぞれのエントリーの内容を読みたい。バイトの ByteArrayInputStream から ZipInputStream を作成でき、エントリとその名前を読み取ることができます。ただし、各エントリの内容を抽出する簡単な方法がわかりません。

(私は Apache Commons を見てきましたが、簡単な方法もわかりません)。

更新@Richのコードは問題を解決しているようです、ありがとう

QUERY両方の例の乗数が * 4 (128/512 および 1024*4) であるのはなぜですか?

0 投票する
2 に答える
301 参照

java - zipfile 内のバイナリ ファイルと文字エンコーディングの検出

不明なソースから (Java ZipInputStream またはその他のライブラリを使用して) zipfile を読み取る場合、どのエントリが「文字データ」(およびその場合はエンコーディング) または「バイナリ データ」であるかを検出する方法があります。また、バイナリの場合は、その他の情報を特定する方法 (MIME タイプなど)

EDITは、ByteOrderMark (BOM) が zipentries で発生するかどうかを確認します。その場合、特別な操作を行う必要があります。

0 投票する
3 に答える
9252 参照

python - ファイル名に無効な文字を含むファイルを Python で抽出する

Python の zipfile モジュールを使用して .zip アーカイブを抽出します (たとえば、このファイルをhttp://img.dafont.com/dl/?f=akvaleirにあるとします)。

その出力:

ファイル名に無効なエンコード文字が含まれているため、抽出後に両方のファイルにアクセスできません。問題は、zipfile モジュールに出力ファイル名を指定するオプションがないことです。

ただし、「unzip akvaleir.zip」はファイル名を適切にエスケープします。

Python プログラムで「unzip -l akvaleir.zip」の出力をキャプチャしようとしましたが、これら 2 つのファイル名は次のとおりです。

「unzip -l akvaleir.zip」の出力をキャプチャせずに、unzip コマンドのように正しいファイル名を取得するにはどうすればよいですか?

0 投票する
1 に答える
834 参照

python - 書き込み時に Python zipfile がハングする

Python でzipfileモジュールを使用して単純な zip ファイルを作成しようとしています。

ファイルは私の作業ディレクトリにあり、空touch a b c d e f g hです。テストに使用します。

最初の 7 項目を zip ファイルに追加した後、最後の項目でハングしますが、スペースがなくなるまで zip ファイルへの書き込みを続けます。これは、私がテストした 2 つのシステムで発生します。1 つは Python 2.4.3 で、もう 1 つは Python 2.6.2 です。ファイルの数が 6 または 7 未満の場合、zip ファイルは問題なく作成されます。そうしないと、7 ~ 15 個のファイルの後で失敗し、ファイルの最後にジャンクを書き込み始めます。私は変更しようとしました:

に:

これにより、さらにいくつかのファイルを書き込むことができる場合もありますが、必然的に失敗することもあります。

私は何を間違っていますか?

0 投票する
3 に答える
2432 参照

zip - ライブ zip ファイル処理用のオープンソース C ライブラリ

zipfile の内容を開いて読み取ることができる C/C++ ライブラリを探しています (zipfile の書き込みは厳密な要件ではありませんが、あれば便利です)。

ファイルを開き、ファイルを列挙してから、zipfile 内のファイルから効率的に (暗号化されていない) データを読み取れるようにしたいと考えています。

私が見つけたすべてのライブラリは、すべて WIN32 固有のものです。Mac OS X または iPhone (PPC、X86、または 64 ビット) で実行できるものが必要です。

Zip64 については心配していません (繰り返しますが、それはいいことですが)。

編集: zlib を提案しないでください。Zlib は、圧縮されたデータを圧縮/解凍するためのライブラリです。実際のzipファイルについては何も知りません。

0 投票する
1 に答える
1032 参照

java - ZipFileSet を使用して大きな jar を抽出しようとしたときの OutOfMemory エラー

jdk1.5 では、かなり大きな jar ファイルを抽出しようとすると OutofMemoryError が発生します。ただし、これは jdk6 では発生しません。jdk1.5 と jdk6 でデフォルトの heap-size/permgen 設定が異なるためですか、それとも jdk6 で修正された jdk1.5 のバグですか?

0 投票する
4 に答える
23421 参照

jquery - jQueryはボタ​​ンからzipファイルをダウンロードしますか?

ボタンからzipファイルをダウンロードするのにどれだけの時間を費やしているのか、非常に恥ずかしい....

ここで防弾が必要なので、ここで質問します、ありがとう。

0 投票する
1 に答える
2048 参照

glob - glob.glob を使用して Zip ファイルを作成する際の問題

フォルダー (およびサブフォルダー) から Zip ファイルを作成しています。正常に動作し、新しい .zip ファイルも作成されますが、glob.glob の使用中に問題が発生しています。目的のフォルダー (ソース フォルダー) からすべてのファイルを読み取り、新しい zip ファイルに書き込みますが、問題は、サブディレクトリを追加しているが、サブディレクトリからファイルを追加していないことです。

ファイル名とパス、およびファイルタイプ (Zip または Tar) を選択するオプションをユーザーに提供しています。.tar.gz ファイルの作成中に問題は発生しませんが、使用時に .zip ファイルを作成すると、この問題が発生します。

これが私のコードです:

また、以下のコードを使用する場合:

2番目のコードは、フォルダー/サブフォルダー内にある場合でもすべてのファイルを取得し、新しい .zip ファイルを作成し、ディレクトリ構造なしでそれに書き込みます。メインフォルダーのディレクトリ構造を使用せず、メインディレクトリまたはサブディレクトリからすべてのファイルをその.zipファイルに書き込むだけです。

誰でも私を助けたり、提案したりできますか。使用する2番目のオプションよりもglob.globをお勧めします。

前もって感謝します。

よろしく、アカシュ

0 投票する
2 に答える
2183 参照

python - Python 2.6 は、zip ファイル内の既存のアーカイブへの追加を好みません

私が取り組んでいるプログラムの一部の Python ユニット テストでは、エンド ツー エンドのテストにインメモリ zip ファイルを使用します。SetUp() では単純な zip ファイルを作成しますが、いくつかのテストではいくつかのアーカイブを上書きしたいと考えています。このために、「zip.writestr(archive_name, zip.read(archive_name) + new_content)」を実行します。何かのようなもの

問題は、これが Python 2.4 および 2.5 では正常に機能するが、2.6では機能しないことです。Python 2.6 では、これは出力行で「BadZipfile: ディレクトリ "bar" のファイル名とヘッダー "foo" が異なります。」で失敗します。

正しいファイル bar を読み取っているように見えますが、代わりに foo を読み取る必要があると考えています。

私は途方に暮れています。私は何を間違っていますか?これはサポートされていませんか? Web を検索してみましたが、同様の問題に関する言及は見つかりませんでした。zipfile のドキュメントを読みましたが、特にファイル名の文字列で read() を呼び出しているため、関連するもの (と思われるもの) を見つけることができませんでした。

何か案は?

前もって感謝します!