java zip文件的解压缩 以及读取的问题 20
项目中遇到一个问题,服务器将zip解压后的字节流发送给客户端,服务器解压并发送字节流,我已经实现了。但是客户端接收服务器发送的InputStream时,不知道能不能不将文...
项目中遇到一个问题,服务器将zip解压后的字节流发送给客户端,服务器解压并发送字节流,我已经实现了。
但是客户端接收服务器发送的InputStream时,不知道能不能不将文件下载保存到本地,解压读取后删除,而是在内存中解压并获取里面的信息,希望能说一下解决办法,谢谢。
最好有示例,谢谢。
服务器发送的是zip压缩包里,可能包含很多的xml的配置文件信息,对这块操作不熟,谢谢大家。
jegisk 你这个是在网上赋值发给我的吧,呵呵……
http://zhidao.baidu.com/question/127482917.html
你根本都没理解问题,呵呵…… 展开
但是客户端接收服务器发送的InputStream时,不知道能不能不将文件下载保存到本地,解压读取后删除,而是在内存中解压并获取里面的信息,希望能说一下解决办法,谢谢。
最好有示例,谢谢。
服务器发送的是zip压缩包里,可能包含很多的xml的配置文件信息,对这块操作不熟,谢谢大家。
jegisk 你这个是在网上赋值发给我的吧,呵呵……
http://zhidao.baidu.com/question/127482917.html
你根本都没理解问题,呵呵…… 展开
展开全部
不好意思搞反了,这样就更简单了。
用这个构造方法ZipInputStream(InputStream in);接收传过来的流,然后用这个类的getNextEntry()方法解压缩文件,最后调用read(byte[] b, int off, int len)方法将数据写入byte数组。
ZipInputStream zin = new ZipInputStream(in);
ZipEntry entry = null;
while((entry=zin.getNextEntry())!=null){
if(entry.isDirectory()||entry.getName().equals("..\\"))
continue;
BufferedInputStream bin = new BufferedInputStream(zin);
byte[] buf = new byte[];
bin.read(buf,0,1);
}
用这个构造方法ZipInputStream(InputStream in);接收传过来的流,然后用这个类的getNextEntry()方法解压缩文件,最后调用read(byte[] b, int off, int len)方法将数据写入byte数组。
ZipInputStream zin = new ZipInputStream(in);
ZipEntry entry = null;
while((entry=zin.getNextEntry())!=null){
if(entry.isDirectory()||entry.getName().equals("..\\"))
continue;
BufferedInputStream bin = new BufferedInputStream(zin);
byte[] buf = new byte[];
bin.read(buf,0,1);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询