gpt4 book ai didi

java - 如何压缩代码中生成的文件 (Java)

转载 作者:行者123 更新时间:2023-11-30 11:20:04 24 4
gpt4 key购买 nike

好吧,我正在生成 2 个 .xml 文件,但我想将它们保存在一个文件夹中,并压缩它们,我不想单独生成它们,而是将它们分开放在一个文件夹中并压缩。 d你明白了吗?

我想将我正在创建的两个文件放入一个文件夹中并压缩它。我唯一想保存的是 zip 文件。

String name = fields.find(chooser.getLocation(), "mimic");
Mimic mimic = getMimic(mimicList.get(0));
String fileName = chooser.getSelectedFile().toString() + File.separator + "des_" +nombreMimic.substring(0, nombreMimic.length()-4)+ ".xml";
String config = chooser.getSelectedFile().toString() + File.separator + "cfg_" +nombreMimic.substring(0, nombreMimic.length()-4)+".xml";
FileOutputStream file;
FileOutputStream file2;


file = new FileOutputStream(fileName);
file2 =new FileOutputStream(config);

Parser parser;
parser = new Parser(file,new String[]{});
parser.render(mimic , fields);
JOptionPane.showMessageDialog(null, "Complete!");

Parser2 parser2;
parser2 = new Parser2(file2,new String[]{});
parser2.render(mimic , fields);
JOptionPane.showMessageDialog(null, "Complete!");


FileInputStream inputStream = new FileInputStream(chooser.getSelectedFile().toString() + File.separator + "des_" +nombreMimic.substring(0, nombreMimic.length()-4)+ ".xml");
ZipOutputStream zip = new ZipOutputStream(new FileOutputStream(nombreMimic.substring(0, nombreMimic.length()-4)+".des"));

zip.putNextEntry(new ZipEntry(fileName));

byte [] buffer = new byte [1024];
int bytesRead;
while((bytesRead=inputStream.read(buffer))>0){

zip.write(buffer,0,bytesRead);

}

zip.closeEntry();
zip.close();
inputStream.close();


} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);

JOptionPane.showMessageDialog(null, "Error parsing");
}
}
}
}

最佳答案

您的问题似乎已在此处得到解答:how to zip a folder itself using java

其中解释了如何使用 Java 压缩文件/文件夹。

您必须将文件保存在该文件夹中才能使用,但是一旦压缩,您可以删除此 tutorial 后面的原始文件夹它使用:

String path = "/path/to/file";
Files.delete(path);

这样,唯一保存的将是 zip 文件。

关于java - 如何压缩代码中生成的文件 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22920521/

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