如何在不提取java的情况下读取Zipped文件的内容

前端之家收集整理的这篇文章主要介绍了如何在不提取java的情况下读取Zipped文件的内容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我的文件名为ex.zip.在这个例子中,Zip文件只包含一个具有相同名称文件(即“ex.txt”),这个文件非常大.我不想每次都提取zip文件.因此我需要在不解压缩zip文件的情况下读取文件内容(ex.txt).我尝试了下面的代码但是我只能读取变量中文件名称.

如何读取文件内容并将其存储在变量中?

先感谢您

fis=new FileInputStream("C:/Documents and Settings/satheesh/Desktop/ex.zip");
ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
ZipEntry entry;

while((entry = zis.getNextEntry()) != null) {
    i=i+1; 
    System.out.println(entry);
    System.out.println(i);
    //read from zis until available
}
最佳答案
试试这个:

        ZipFile fis = new ZipFile("ex.zip");

        int i = 0;
        for (Enumeration e = zip.entries(); e.hasMoreElements();) {
            ZipEntry entry = (ZipEntry) e.nextElement();
            System.out.println(entry);
            System.out.println(i);

            InputStream in = fis.getInputStream(entry);

        }

例如,如果文件包含文本,并且您想将其作为String打印,则可以像这样读取InputStream:Read/convert an InputStream to a String

猜你在找的Java相关文章