【发布时间】:2023-07-19 08:26:01
【问题描述】:
我正在尝试在 java 中解压缩一些 .gz 文件。经过一些研究,我写了这个方法:
public static void gunzipIt(String name){
byte[] buffer = new byte[1024];
try{
GZIPInputStream gzis = new GZIPInputStream(new FileInputStream("/var/www/html/grepobot/API/"+ name + ".txt.gz"));
FileOutputStream out = new FileOutputStream("/var/www/html/grepobot/API/"+ name + ".txt");
int len;
while ((len = gzis.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
gzis.close();
out.close();
System.out.println("Extracted " + name);
} catch(IOException ex){
ex.printStackTrace();
}
}
当我尝试执行它时,我得到了这个错误: java.util.zip.ZipException: 不是 GZIP 格式
我该如何解决?提前感谢您的帮助
【问题讨论】:
-
使用命令
file /var/www/html/grepobot/API/someName.txt.gz验证文件是否为gzip压缩数据? -
当然是。如果我执行 gunzip /var/www/html/grepobot/API/someName.txt.gz 它可以工作。目前我用 Process 执行命令