我想在java中创建一个压缩的函数
将文件转换为.zip文件,之前使用JFileChooser。
而现在ZipEntry无法与“C:......”的绝对路径相处,
我知道,它需要\\
而不仅仅是\
,但是我
不知道怎么做。
任何人都可以帮助我吗?
顺便说一句。这是代码:
public static void zip(String inputFile, String zipFile){
try{
FileOutputStream fos = new FileOutputStream(zipFile);
ZipOutputStream zos = new ZipOutputStream(fos);
add(zos, inputFile);
zos.close();
fos.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
public static void add(ZipOutputStream zos, String fileName) throws Exception{
File newFile = new File(fileName);
if(newFile.exists()){
FileInputStream fis = new FileInputStream(newFile);
ZipEntry zipEntry = new ZipEntry(fileName);
zos.putNextEntry(zipEntry);
byte[] bytes = new byte[1024];
int length;
while((length = fis.read(bytes)) >= 0){
zos.write(bytes, 0, length);
}
zos.closeEntry();
fis.close();
}}
答案 0 :(得分:0)
如果您只想将文件添加到zip存档中,那么您最好使用自Java 7 +以来可用的zip文件系统提供程序:
storagevalue
现在,目前还不清楚你想要的最终zip条目的路径是什么,所以......