![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
java.util.zipで空フォルダを格納したいのですが、思った動作にならず、困ってます。
どうかお助けください。
下のプログラムでは、作成されたcreated.zipを展開すると、その中にmyDirectoryというディレクトリを作成したいのですが、このまま実行すると、展開するときになぜか管理者権限を求められて、そして成功もしません。
問題の場所にDIRECTORYNAME2を指定すると、展開はできるのですが、「指定されたファイル名と同じフォルダが既に存在します」と言われ、スキップを選択するときちんとディレクトリが作成されていますが、きちんとしたZip圧縮ファイルで圧縮した場合、そのようなことは聞かれません。
org.apache.tools.zip.*を使用した場合でも結果は同じでしたので、JDKのバグというのは考えにくい気がしますが・・。
---------------- プログラム -------------------
final File fCreate = new File("./created.zip");
final String DIRECTORYNAME1 = "myDirectory/";
final String DIRECTORYNAME2 = "myDirectory//";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(fCreate));
// 問題の場所
ZipEntry dirEntry = new ZipEntry(DIRECTORYNAME1);
out.putNextEntry(dirEntry);
out.closeEntry();
ZipEntry fileEntry = new ZipEntry("myFile");
out.putNextEntry(fileEntry);
out.closeEntry();
out.close();
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
空フォルダってzip圧縮できましたっけ?
うろ覚えですけど、
他のzipツールで空フォルダ作りたいときは「dummy.txt」とか、何かしら中身を入れて圧縮してたような…。
この回答への補足
以下のことが発覚しました。
VistaでZip作成→XPで解答可能
XPでZip作成→Vistaで解答不可能
私の質問→みなさん回答不可能なのでしょうか。
それともバグなのでしょうか。
発覚したことをまとめておきます。
1, Vistaで[右クリック→送る→圧縮(Zip)フォルダ]で圧縮したものは、Vistaで[右クリック→展開]で解凍可能(多分他でも可能)
2, Vistaで質問プログラムでZip作成→Vistaで[右クリック→展開]で解凍不可能
3, Vistaで質問プログラムでZip作成→XPで[右クリック→展開]で解凍可能
4, Vistaで質問プログラムでZip作成→Linux(Debian)でunzipで解凍可能
5, XPで質問プログラムでZip作成→Vistaで上記方法で解凍不可能
6, Linuxで質問プログラムでZip作成→Vistaで上記方法で解凍不可能
いずれの環境もJDK、JRE共に1.6を使用しています。
この結果を見る限り、Vistaの展開操作だけが違ったふるまいをしているように見えます。
Vista環境の方いましたら、2番だけでも成功するかどうか実験お願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- その他(セキュリティ) PDFファイルのパスワード設定について 1 2022/06/25 10:10
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- ノートパソコン パソコンでmp4の動画ファイルを10個くらい(合計20GB)をフォルダに入れて、容量を軽くしてしまお 2 2023/02/06 02:08
- iPhone(アイフォーン) iPhone ファイル iPhoneのファイルで写真をzipに圧縮した後もう一度展開すると画質は変わ 3 2022/10/21 21:53
- Excel(エクセル) 【マクロ】エラーが発生⇒実行時エラー58既に同名のファイルが存在 5 2022/08/31 10:03
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- WordPress(ワードプレス) [BuddyPress]試したいのですが! 3 2022/06/01 13:36
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C言語のポインターに関する警告
-
[JAVA]try 内の変数を外で!?
-
JSPやサーブレットでSystem.out...
-
java教えてください。
-
java int integer
-
LC発振回路-ループ利得
-
会員情報登録プログラムの作成...
-
EclipseでJava
-
曜日の取得方法を教えて下さい!
-
IPアドレスから組織やプロバイ...
-
文字列の引き算
-
vb6 オブジェクトライブラリは...
-
Javaのプログラムがどうしても...
-
JAVA 文字色変更
-
Javaのコマンドライン引数を使...
-
nullcline
-
JAVAのDouble型の小数点以下の...
-
ファイル名に変数を使う(Java)
-
「続行するには何かキーを押し...
-
java.util.zipで作成したアーカ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語のポインターに関する警告
-
JSPやサーブレットでSystem.out...
-
[JAVA]try 内の変数を外で!?
-
JAVAのDouble型の小数点以下の...
-
「続行するには何かキーを押し...
-
EclipseでJava
-
文字列の引き算
-
JAVAのエラーの意味が分かりま...
-
配列を後ろから数えるには?
-
JAVAで素数判定
-
nullcline
-
曜日の取得方法を教えて下さい!
-
エクセルマクロ文で、赤文字セ...
-
JAVA 文字色変更
-
会員情報登録プログラムの作成...
-
Javaのコマンドライン引数を使...
-
Javaでカレントディレクトリを...
-
LC発振回路-ループ利得
-
java シンボルが見つかりません...
-
改行の判定方法
おすすめ情報