Можно ли проверить файл tar на Java, чтобы я мог быть уверен, что другие утилиты tar (т.е. команда tar UNIX) могут извлечь tar? Я хотел бы сделать это в коде и не прибегать к фактическому выполнению tar -tf
из моего приложения и отчета на основе кода возврата.
Я использовал сжатие Apache commons для чтения записей tars (а не их извлечения). Я вручную изменил некоторые из tar с помощью текстового редактора, чтобы представить «поврежденный» tar-файл. Сжатие Commons не всегда не в состоянии прочитать записи, где как команда tar UNIX или 7zip постоянно терпели неудачу независимо от того, что я изменяю. Очевидно, что нужно сделать еще кое-что, чтобы убедиться, что файл tar не поврежден, но что это?
Примечание: На самом деле я не пытался извлечь tar с помощью обычного сжатия в качестве средства проверки. Я не думаю, что это действительно вариант; Размеры tar-файлов, с которыми мне приходится работать, большие (от 3 до 4 гигабайт), и я бы предпочел, чтобы этот процесс не занимал больше времени, чем это уже происходит.