您認爲此代碼正確關閉輸出流條目嗎?知道這不是同一類型的輸出流。關閉特定輸出流的方法
OutputStream out = new JarOutputStream(new FileInputstrem(fileName));
...
((ZipOutputStream)out).closeEntry();
但考慮到兩者都是輸出流,我以爲他們以同樣的方式關閉。因此,在我的情況下,((ZipOutputStream)out).closeEntry();
與((JarOutputStream)out).closeEntry();
相同
您是否可以確認如果您認爲是真的或糾正了我的錯誤? 謝謝。
謝謝我不知道JarOutputStream是擴展ZipOutputStream,它不是特定於ZipOutputStream的調用方法,而是創建通用方法來創建Zip和Jar歸檔,並使用常用方法在此方法中關閉其輸出流條目。但現在我知道JarOutputStream繼承ZipOutputStream,這是最容易實現的。謝謝。 – damson
如果'JarOutputStream'沒有擴展'ZipOutputStream',那麼'(ZipOutputStream)'會導致'ClassCastException'。 – aioobe
不一定,因爲close條目爲所有輸出流條目執行相同的工作。這就是我問這個問題的原因。我不確定。 – damson