Я использую commons-compress для обработки файлов tarball и заметил, что даже файлы, которые не являются tar, похоже, обрабатываются. Почему это так - есть ли лучшая библиотека для обнаружения допустимых файлов tar
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-compress</artifactId>
<version>1.20</version>
</dependency>
bug689.csv
- это файл CSV, тест не пройден, потому что, очевидно, te.isFile () возвращает true. te.getName (), кажется, возвращает содержимое CSV. Является ли это ошибкой, если я использую пакет неправильно - я ожидаю, что InputStream не будет успешно преобразован в TarArchiveEntry
@Test
public void testTarball() throws IOException{
InputStream tarData = this.getClass().getResourceAsStream("/bug689.csv");
TarArchiveInputStream tis = new TarArchiveInputStream(tarData);
TarArchiveEntry te = tis.getNextTarEntry();
assertFalse(te.isFile());
}