username11 发表于 2021-8-27 10:38

JAVA文件流的问题

大佬们,这个功能该怎么实现呢????{:1_889:}有一个zip格式的文件,文件内有多个pdf文件,那么应该如何判断,zip格式内pdf文件的大小呢,如果pdf文件的大小在0KB,那么这个0KB的文件就不参与接下来的操作

username11 发表于 2021-8-27 10:58

或者直接提取的时候,文件为0KB就不提取了

羊毛丶 发表于 2021-8-27 11:04

ZipFile zipFile = new ZipFile(path);
      Enumeration<? extends ZipEntry> entries = zipFile.entries();
      while (entries.hasMoreElements()) {
            ZipEntry zipEntry = entries.nextElement();
            System.out.println(zipEntry.getName());
            System.out.println(zipEntry.getSize());
      }

有方法获取大小啊

username11 发表于 2021-8-27 11:17

羊毛丶 发表于 2021-8-27 11:04
ZipFile zipFile = new ZipFile(path);
      Enumeration

额,试了下,文件的大小确定了,可是后面将文件的数据读出来,不知道该怎么操作了,换个思路就是只将不是0KB的文件提取出来,0KB的文件就不解压了

smallmin 发表于 2021-8-27 11:33

```java
      ZipFile zipFile = new ZipFile("test.zip");
      Enumeration<? extends ZipEntry> entries = zipFile.entries();
      while (entries.hasMoreElements()) {
            ZipEntry zipEntry = entries.nextElement();
            if (zipEntry.getSize() <= 0) {
                break;
            }
            System.out.println("do something..");
      }
```

魔术师的低语 发表于 2021-8-27 14:52

你可以先解压出来,再遍历一遍删除0KB的文件

username11 发表于 2021-8-27 17:01

谢谢大家,已经解决了,不过不是用的这个方法,先把它解压出来,再挨个的判断,虽然方法不同了,结果差不多一样~~
页: [1]
查看完整版本: JAVA文件流的问题