0
Apache Commons壓縮庫似乎專注於將TarArchiveEntry寫入TarArchiveOutputStream。但是看起來創建TarArchiveEntry的唯一方法是使用File對象。我可以將流或字節寫入Apache Commons Compress Tarfile嗎?
我沒有要寫入Tar的文件,我在內存或最好是流中都有byte []。我不想將一堆臨時文件寫入磁盤,以便我可以構建一個tar。
有什麼辦法,我可以這樣做:
TarEntry entry = new TarEntry(int size, String filename);
entry.write(byte[] fileContents);
TarArchiveOutputStream tarOut = new TarArchiveOutputStream();
tarOut.write(entry);
tarOut.flush();
tarOut.close();
,或者甚至更好....
InputStream nioTarContentsInputStream = .....
TarEntry entry = new TarEntry(int size, String filename);
entry.write(nioTarContentsInputStream);
TarArchiveOutputStream tarOut = new TarArchiveOutputStream();
tarOut.write(entry);
tarOut.flush();
tarOut.close();