※ ChatGPTを利用し、要約された質問です(原文:zipフォルダの解凍)
zipフォルダの解凍方法とファイル確認の手順
このQ&Aのポイント
zipフォルダ実行時に格納したファイルの確認方法を解説します
zipフォルダの解凍方法とファイルの確認について詳しく紹介します
Javaを使用してzipフォルダの解凍とファイルの確認を行う方法を解説します
いつもお世話になっています。
zipフォルダ実行時のことで質問します。
指定のファイルをzipフォルダに格納して、フォルダ名を指定して格納することはできました。
それで、逆に、zipフォルダにどんなファイルがあるかを確かめたいと思ったのですが、可能なのでしょうか?
zipフォルダに格納できたので、それを逆に変えてしようとしたのですが、いまいちわかりません。
zipフォルダに格納したソースは以下です。
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class ZipOutStream_Test {
public static void main(String[] args) throws Exception {
File zipf = new File("D:/zip_Java.zip");
//zipファイルに埋め込むfile名
File[] files = { new File("directory.txt") };
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipf));
try {
encode(zos,files);
} catch (IOException e) {
}catch(Exception e) {
}finally {
zos.close();
}
}
static byte[] buf = new byte[1024];
public static void encode(ZipOutputStream zos, File[] files) throws Exception {
for(File f: files) {
if(f.isDirectory() ) {
encode(zos, f.listFiles() );
}else {
ZipEntry ze = new ZipEntry(f.getPath().replace('\\', '/'));
zos.putNextEntry(ze);
InputStream is = new BufferedInputStream(new FileInputStream(f));
for (;;) {
int len = is.read(buf);
if (len < 0) break;
zos.write(buf, 0, len);
}
is.close();
}
}
}
}
宜しくお願いします。
お礼
ありがとうございます。 無事、解決できました。 また、よろしくお願いします。