我的问题是我想查看文件是否在zip文件中。所以我做了这段代码:

File zipf = new File(backupFolder, dfws.format(new Date()) + ".zip");
                        if (!zipf.exists()) zipf.createNewFile();
                        fs = new FileOutputStream(zipf);
                        ZipOutputStream zos = new ZipOutputStream(fs);
                        System.out.println("size : " + zipf.length());
                        if (zipf.length() > 0) {
                            ZipFile zf = new ZipFile(zipf);

                            System.out.println("entry : " + zf.getEntry(name));
                            if (zf.getEntry(name) != null) {
                                int index = 1;
                                while (zf.getEntry(index + "_" + name) != null) {
                                    index++;
                                }
                                name = index + "_" + name;
                            }

                            zf.close();
                        }
                        System.out.println("index found : " + name);


但是问题是文件的长度始终为0。如果zip文件内部没有文件,则无法创建ZipFile实例。

最佳答案

感谢RealSkeptic:创建ZipFile之后,我不得不打开FileOutputStream。

关于java - Java获取Zip文件内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31774161/

10-09 09:00