とジッパーで再帰的なディレクトリ構造を保存します、私はそれを(unzip assets.zip
を介して)解凍すると、assets
フォルダの下のディレクトリ構造を保持します。したがって、解凍すると、ZIPの "ルート"にはconfig.yml
、ZIPには2つのディレクトリ(models
およびtextures
)が表示されます。は、私は私のラップトップ上の次のディレクトリを持っているJavaの8
File sourceDir = new File("/tmp/myapp/assets");
ZipOutputStream zip = new ZipOutputStream(new FileOutputStream("/Users/myuser/archives/assets.zip"));
File[] contents = sourceDir.listFiles();
for(File file : contents) {
zip.putNextEntry(new ZipEntry(file.name));
InputStream isteam = new FileInputStream(file);
Files.copy(isteam, zip);
zip.closeEntry();
isteam.close();
}
zip.close();
コードが正しく/Users/myuser/archives/assets.zip
でZIPを作成します。私はこのコードを実行すると、ファイルの残りの部分では、など
、これらのそれぞれのサブディレクトリ内になります。
私はそれ(unzip /Users/myuser/archives/assets.zip
)解凍
しかし、その後、ls -al /Users/myuser/archives
を実行し、私の出力は次のようになります。
-rw-r--r-- 1 myuser 1754083733 492 Dec 30 14:14 assets.zip
-rw-r--r-- 1 myuser 1754083733 10 Dec 30 14:14 config.yml
-rw-r--r-- 1 myuser 1754083733 7 Dec 30 14:14 models
-rw-r--r-- 1 myuser 1754083733 9 Dec 30 14:14 textures
のでmodels
とtextures
両方がファイル(いないディレクトリなど)のように扱われています。さらに、「models
ファイル」の内容を調べると、の内容がのtroll.ply
とtree.ply
と連結されているように見えます。また、2つのPNGの「tree
ファイル」の場合も同様です。
結果のZIPにディレクトリ構造(深度/ネストに関係なく)が常に保持されるように、これを調整するにはどうすればよいですか?
... – Holger