import java.io.*;
import java.util.zip.*;public class ZipInputStreamDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:" +File.separator+"test.zip");
File outFile=null;
InputStream in=null;
OutputStream out=null;
ZipFile zf=new ZipFile(file);
ZipInputStream zips=new ZipInputStream(new FileInputStream(file));
ZipEntry entry=null;
while((entry=zips.getNextEntry())!=null){
System.out.println("解压缩"+entry.getName()+"名字");
outFile=new File("d:" +File.separator +entry.getName() );
if(!outFile.getParentFile().exists()){
outFile.mkdir();
}
if(!outFile.exists()){
outFile.createNewFile();
}
in=zf.getInputStream(entry);
out=new FileOutputStream(outFile);
int temp=0;
while((temp=in.read())!=0){
out.write(temp);
}
}
in.close();
out.close();
}}
上面的程序是一个解压缩操作,在d盘的根目录下有压缩文件zip.test,压缩实体是一个文件夹下面的4个文件
运行上面的程序 ,提示的错误:
解压缩test\3.txt名字
Exception in thread "main" java.io.IOException: 系统找不到指定的路径。
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:947)
at IO.ZipInputStreamDemo.main(ZipInputStreamDemo.java:25)
这儿的路径没问题,为什么总是找不到路径?
import java.util.zip.*;public class ZipInputStreamDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:" +File.separator+"test.zip");
File outFile=null;
InputStream in=null;
OutputStream out=null;
ZipFile zf=new ZipFile(file);
ZipInputStream zips=new ZipInputStream(new FileInputStream(file));
ZipEntry entry=null;
while((entry=zips.getNextEntry())!=null){
System.out.println("解压缩"+entry.getName()+"名字");
outFile=new File("d:" +File.separator +entry.getName() );
if(!outFile.getParentFile().exists()){
outFile.mkdir();
}
if(!outFile.exists()){
outFile.createNewFile();
}
in=zf.getInputStream(entry);
out=new FileOutputStream(outFile);
int temp=0;
while((temp=in.read())!=0){
out.write(temp);
}
}
in.close();
out.close();
}}
上面的程序是一个解压缩操作,在d盘的根目录下有压缩文件zip.test,压缩实体是一个文件夹下面的4个文件
运行上面的程序 ,提示的错误:
解压缩test\3.txt名字
Exception in thread "main" java.io.IOException: 系统找不到指定的路径。
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:947)
at IO.ZipInputStreamDemo.main(ZipInputStreamDemo.java:25)
这儿的路径没问题,为什么总是找不到路径?
解决方案 »
- JAVA语言 程序 设计
- Scanner(System.in) 输入特定的字符,自动停止输入?
- jframe的问题
- 文件传输出现无限循环
- NetBean4.0中不能用"."后面会有method的提示的问题!
- thinking in java 的一道简单练习题
- 怎样实现JAVA SE 传对象至servlet----不是APPLET和servlet
- 你能解释这句吗?Thread thread2=new Thread(new ThreadUseRunnable(),"SecondThread");
- 向各位仁兄贤弟请教:下面这段代码怎么运行结果不对?
- java的问题
- 请教:java导入jmf.jar包的问题!!!急急急!
- java输出4位网站验证码, 在线等
import java.util.zip.*;public class ZipInputStreamDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:" +File.separator+"test.zip");
File outFile=null;
InputStream in=null;
OutputStream out=null;
ZipFile zf=new ZipFile(file);
ZipInputStream zips=new ZipInputStream(new FileInputStream(file));
ZipEntry entry=null;
while((entry=zips.getNextEntry())!=null){
System.out.println("解压缩"+entry.getName()+"名字");
outFile=new File("d:" +File.separator +entry.getName() );
/*if(!outFile.getParentFile().exists()){
outFile.mkdir();
}*/
if(!outFile.exists()){
if (entry.isDirectory())
{
outFile.mkdir();
continue;
}
else
{
outFile.createNewFile();
}
}
in=zf.getInputStream(entry);
out=new FileOutputStream(outFile);
int temp=0;
while((temp=in.read())!=-1){ //文件结束标识为-1
out.write(temp);
}
in.close();
out.close();
}
//in.close();
//out.close();
}}
import java.util.zip.*;public class ZipInputStreamDemo {
public static void main(String[] args) throws Exception {
File file=new File("d:" +File.separator+"test.zip");
File outFile=null;
InputStream in=null;
OutputStream out=null;
ZipFile zf=new ZipFile(file);
ZipInputStream zips=new ZipInputStream(new FileInputStream(file));
ZipEntry entry=null;
while((entry=zips.getNextEntry())!=null){
System.out.println("解压缩"+entry.getName()+"名字");
outFile=new File("d:" +File.separator +entry.getName() );
/*if(!outFile.getParentFile().exists()){
outFile.mkdir();
}*/
if (entry.isDirectory())
{
if (! outFile.exists())
{
outFile.mkdir();
}
else
{
continue;
}
}
if(!outFile.exists()){
outFile.createNewFile();
}
in=zf.getInputStream(entry);
out=new FileOutputStream(outFile);
int temp=0;
while((temp=in.read())!=-1){ //文件结束标识为-1
out.write(temp);
}
in.close();
out.close();
}
//in.close();
//out.close();
}}
test\3.txt 这个怎么能用outFile.mkdir()创建文件夹。