我有几个要写入 zip 存档的字符串(Json 对象)。内容应具有 UTF-8 字符集。我可以先在硬盘上创建 txt 文件,然后将它们压缩在一起。但是是否也可以直接使用 txt 文件和 utf-8 字符集创建一个 zip 存档?目前我正在将字符串的字节直接写入存档。并获取系统的字符集。String str = "...";ZipOutputStream zipOutputStream = new ZipOutputStream(new FileOutputStream("dest\\zipFile.zip"));zipOutputStream.putNextEntry(new ZipEntry("entryName"));zipOutputStream.write(str.getBytes());zipOutputStream.close();
1 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
你所做的对我来说似乎是正确的。
如果你想正确的多个文件然后调用.closeEntry(),然后你可以添加一个新文件使用putNextEntry和write作为条目名称使用你的文件名。
对于字符编码,你可以使用这样的东西:
ZipOutputStream zipStream = new ZipOutputStream(new FileOutputStream(outputFile));
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(zipStream, Charset.forName("YOUR_WANTED_CHARSET"))
);
添加回答
举报
0/150
提交
取消