菜鸟求教,文件是从网上下载,转成一个InputStream,Java自带的Zip解压不支持中文,而Ant的工具我没有发现可以使用流初始化,所以必须先落地到本地文件再做处理吗?有没有其他的解决方法呢?

解决方案 »

  1.   

    去apache官网下个zip工具包吧。
      

  2.   


    已经下了ant工具包了,但是在org.apache.ant.tools.zip.*;下没找到可以用输入流来处理zip文件,API中也没找到,有这种方法吗?
      

  3.   

    其实不是的,java默认的zip工具包是支持中文的,但是它的编码与windows的不同,windows使用的是gbk的中文编码,而java使用的是utf8的编码,而默认的java包是不可以改变编码的,因此使用java编写的zip打包工具,不能与windows下的打包工具共用。
    当然,你可以使用支持更改编码的其它打包api。
      

  4.   

    试试这货有没有
    http://commons.apache.org/proper/commons-compress/
      

  5.   

    ==================================
    试一试这个流:
    public class JarInputStream extends ZipInputStream
    java.util.jar包下。
    我测试了一下,中文是可以的,但我测试的是压缩,解压你再去尝试一下。