gpt4 book ai didi

java - 如何从字符串在 java 中创建 Gzip 存档?

转载 作者:行者123 更新时间:2023-11-30 09:23:05 25 4
gpt4 key购买 nike

我有 3 个字符串,每个字符串代表一个 txt 文件内容,不是从计算机加载的,而是由 Java 生成的。

String firstFileCon = "firstContent"; //File in .gz: 1.txt
String secondFileCon = "secondContent"; //File in .gz: 2.txt
String thirdFileCon = "thirdContent"; //File in .gz: 3.txt

如何创建包含这三个文件的 GZIP 文件,并将压缩文件保存到光盘?

最佳答案

创建一个名为 output.zip 的 zip 文件,其中包含文件 1.txt2.txt3 .txt 及其内容字符串,请尝试以下操作:

Map<String, String> entries = new HashMap<String, String>();
entries.put("firstContent", "1.txt");
entries.put("secondContent", "2.txt");
entries.put("thirdContent", "3.txt");

FileOutputStream fos = null;
ZipOutputStream zos = null;
try {
fos = new FileOutputStream("output.zip");

zos = new ZipOutputStream(fos);

for (Map.Entry<String, String> mapEntry : entries.entrySet()) {
ZipEntry entry = new ZipEntry(mapEntry.getValue()); // create a new zip file entry with name, e.g. "1.txt"
entry.setMethod(ZipEntry.DEFLATED); // set the compression method
zos.putNextEntry(entry); // add the ZipEntry to the ZipOutputStream
zos.write(mapEntry.getKey().getBytes()); // write the ZipEntry content
}
} catch (FileNotFoundException e) {
// do something
} catch (IOException e) {
// do something
} finally {
if (zos != null) {
zos.close();
}
}

参见 Creating ZIP and JAR files了解更多信息,特别是压缩文件一章。

关于java - 如何从字符串在 java 中创建 Gzip 存档?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16243629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com