本文共 1553 字,大约阅读时间需要 5 分钟。
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
哪位大神帮忙解决下,谢谢了!!!
书上的例题,要求吧之前压缩的文件解压出来。我按源码敲下来了,把之前压缩中F盘的hmhTest.zip解压出来,结果报错了!请问下怎么解决?是路径或文件分隔符的问题吗?
源代码是
package zipInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
public class MyZipIS {
public static void main(String[] args) {
File file=new File("F:/hmhTest.zip"); //写成F:\\hmhTest.zip 也不行
System.out.println(file.exists());
ZipInputStream zis;
try {
ZipFile zf=new ZipFile(file);
zis=new ZipInputStream(new FileInputStream(file));
ZipEntry ze=zis.getNextEntry();
while(((ze=zis.getNextEntry())!=null)&&!ze.isDirectory()){
File tmp=new File("F:\\"+ze.getName());
if(!tmp.exists()){
tmp.getParentFile().mkdirs();
OutputStream os=new FileOutputStream(tmp);
InputStream fis=zf.getInputStream(ze);
int count =0;
while((count=fis.read())!=-1){
os.write(count);
}
os.close();
fis.close();
}
zis.closeEntry();
System.out.println(ze.getName()+"解压成功!");
}
zis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
后面的报错是这样的,
true
F:\F:\hmhTest\hfydj.txt
java.io.FileNotFoundException: F:\F:\hmhTest\hfydj.txt (文件名、目录名或卷标语法不正确。)
at java.io.FileOutputStream.open0(Native Method)
at java.io.FileOutputStream.open(FileOutputStream.java:270)
at java.io.FileOutputStream.(FileOutputStream.java:213)
at java.io.FileOutputStream.(FileOutputStream.java:162)
at zipInputStream.MyZipIS.main(MyZipIS.java:28)
转载地址:https://blog.csdn.net/weixin_32541663/article/details/114996816 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!