作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<分区>
我有一个包含大量小 xml 文件(略小于 1.5m)(无子目录)的 tar.gz 文件。现在我想遍历那些,我正在尝试使用 apache commons compress 来实现它。我不想像在类似主题中经常看到的那样将任何内容输出或写入新文件。我只想逐步阅读信息(完美的是能够在一个点停止并继续程序的另一次运行,但这是次要的)。
所以对于初学者来说,我认为我应该从类似的东西开始(计数器只是为了测试目的而存在以减少时间):
public static void readTar(String in) throws IOException {
try (TarArchiveInputStream tarArchiveInputStream =
new TarArchiveInputStream(
new BufferedInputStream(
new GzipCompressorInputStream(
new FileInputStream(in))))){
TarArchiveEntry entry;
int counter = 0;
while ((entry = tarArchiveInputStream.getNextTarEntry()) != null && counter < 1000) {
counter++;
System.out.println(entry.getFile());
}
}
}
但是entry.getFile()的结果总是null,所以我不能处理它的内容,而entry.getName() 返回预期结果。
如果有人能指出我的错误,我会很高兴。
我是一名优秀的程序员,十分优秀!