問題タブ [zip]

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 投票する
6 に答える
83878 参照

java - java.util.zip.ZipOutputStreamを使用する場合のzipファイル内のディレクトリ

ファイルt.txt、ディレクトリt、および別のファイルt/t2.txtがあるとします。Linuxのzipユーティリティ「zip-rt.zipt.txt t」を使用すると、次のエントリを含むzipファイルが取得されます(unzip -l t.zip)。

java.util.zip.ZipOutputStreamを使用してその動作を複製し、ディレクトリのzipエントリを作成しようとすると、javaは例外をスローします。ファイルのみを処理できます。zipファイルにat/t2.txtエントリを作成し、それにt2.txtファイルの内容を使用して追加することはできますが、ディレクトリを作成できません。何故ですか?

0 投票する
8 に答える
14896 参照

java - Zip/Jar ファイルのバイナリ差分

まったく同じソース ファイルから jar または zip をビルドすると、常に別のファイルが生成されるようです。Java jar コマンドと、ant の jar および zip タスクの両方を使用して、これを試しました。

これは、新しい jar/zip のタイムスタンプが保存されている各ファイルの現在の時刻に設定されていることが原因のようです。

zip ツールがファイルシステム上のファイルのタイムスタンプを単純に使用して、まったく同じソースからビルドされた jar がまったく同じように見えるようにする方法はありますか?

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

python - 処理のために zip ファイルを受け入れるデーモンの提案

次のようなデーモンを書きたいと思っています。

  • zip ファイルへのパスを含むキュー (sqs、rabbit-mq など) からメッセージを読み取ります
  • 「このジョブは処理中です」などと言って、データベース内のレコードを更新します
  • 前述のアーカイブのコンテンツを読み取り、見つかった各ファイルのファイル メタデータから選別された情報を使用して、データベースに行を挿入します
  • 各ファイルを s3 に複製します
  • zipファイルを削除します
  • ジョブを「完了」とマークする
  • キュー内の次のメッセージを読み取り、繰り返します

これはサービスとして実行され、誰かが Web フロントエンド経由でファイルをアップロードしたときにキューに入れられたメッセージによって開始されます。アップローダはすぐに結果を確認する必要はありませんが、アップロードはバックグラウンドで適切に処理されます。

私はPythonに堪能なので、最初に頭に浮かぶのは、各リクエストを処理して上記のプロセスを実行するためのツイストを備えた単純なサーバーを作成することです。しかし、マルチユーザー コンテキストで実行されるこのようなものを作成したことはありません。1 分または 1 時間に数百のアップロードを処理するわけではありませんが、一度に複数のアップロードを処理できると便利です。また、マルチスレッド アプリケーションを作成したり、ブロッキングなどの問題に対処したりすることにもあまり詳しくありません。

過去に人々はこれをどのように解決しましたか?私が取ることができる他のいくつかのアプローチは何ですか?

助けと議論を前もってありがとう!

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

python - zip サイズ/作成時間の見積もり

Python zipfile モジュールまたは UNIX コマンド ライン ユーティリティを使用して、必要に応じて ZIP アーカイブを作成する必要があります。

多くの場合、圧縮されるリソースは 1GB を超えており、必ずしも圧縮に適しているとは限りません。

作成時間/サイズを効率的に見積もるにはどうすればよいですか?

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

python - Pythonでパスワードで保護されたzipファイルを作成するにはどうすればよいですか?

python2.6以降、パスワードで保護されたzipからデータを抽出するのが簡単になりました。しかし、純粋なPythonでパスワードで保護されたzipファイルを作成するにはどうすればよいですか?

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

c# - IE7ではzipファイルの書き込みが機能しません

zipファイルをデータベースに保存する古いアプリケーションを継承しました。このファイルを取得する必要があります。Firefoxでは問題なく動作します。zipを開くことができ、その中の各ファイルは問題ありません。IE7で実行すると、次のエラーが発生します。

Internet Explorerは、ローカルホストからProductContentFormImage.aspxをダウンロードできません。

Internet Explorerは、このインターネットサイトを開くことができませんでした。リクエストされたサイトは利用できないか、見つかりません。後でもう一度やり直してください。

私は以下のコードを使用しています。

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

java - Javaでディレクトリを圧縮すると、同じファイルを使用する他のプロセスに影響しますか?

ディレクトリとその下のすべてのファイルとディレクトリのzipファイルを作成するために、java.util.zipライブラリとZipOutputStreamを使用しています。私のアプリケーションでは、圧縮中に別のスレッドがこれらの同じファイルにアクセスしている可能性があります。私はファイル圧縮(またはスレッドセーフ)の専門家ではないので、私の質問は、他の何かがそれらのファイルにアクセスしているときにディレクトリを圧縮すると、どちらのプロセスにも影響しますか?

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

linux - Linux ボックスでの自己解凍型 zip アーカイブの作成

いくつかの制約があるため、Linux ボックスで自己解凍型の ZIP アーカイブを作成する必要があります。結果のアーカイブは、Windows でのみ実行可能である必要があります。これはまったく可能ですか?もしそうなら、どのツールがその仕事をしますか?

背景: ユーザーが私の Linux ボックスからセットアップ パッケージをダウンロードするとき、そのセットアップ パッケージに特定のキーを事前入力する必要があります。そのキーは実行時にしかわかりません。私のアイデアは、そのキーを使用して単純な .xml ファイルを作成し、その xml ファイルを使用して .msi インストーラーを自己解凍形式のアーカイブに圧縮し、そのファイルをブラウザーに送信することでした。それを実現する方法について別のアイデアがある場合は、それも聞いてみたいです

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

php - PHP で shell_exec を使用してファイルを圧縮する: パスの問題

私は、ユーザーがバックアップしたもののリストから選択したファイルを含むzipファイルをダウンロードできるようにするWebバックアップサービスの一部に取り組んでいます。

zip プロセスは、shell_exec コマンドを介して実行されます。これを機能させるために、Apache ユーザーにパスワードなしの sudo 特権を zip コマンドに与えました。

私の問題は、ユーザーのバックアップファイルを含むフォルダーに「sudo cd /path/to/user/files」を実行できないため、圧縮するファイルへの完全な絶対パスを指定する必要があることです。私が欲しくないzipファイル。

これが私が意味することです:

ユーザー 'test1' のファイルはバックアップされており、次のように保存されて

ます
。 pics/pic3.jpg
/home/backups/test1/hello.txt
/home/backups/test1/music/band/song.mp3

これらのファイルを圧縮すると、完全なパスが保持されますが、表示したいだけです:
my pics/pic1.jpg
my pics/pic2.jpg
my pics/pic3.jpg
hello.txt
music/band/song.mp3

パスを切り捨てるか、各ファイルのカスタム パスを指定するように zip に指示する方法はありますか?
または、相対ファイル パスを簡単に指定できるように、作業ディレクトリをユーザーのルート バックアップ フォルダに変更する方法はありますか。

お読みいただきありがとうございます。ここまで読んでいただければ幸いです。