2 回答

TA貢獻(xiàn)2080條經(jīng)驗(yàn) 獲得超4個(gè)贊
難道您實(shí)現(xiàn)了一個(gè)文件壓縮就不能實(shí)現(xiàn)多個(gè)文件壓縮了嗎。
把多個(gè)文件用循環(huán)一個(gè)一個(gè)傳給您那單個(gè)文件壓縮的方法里去,傳出時(shí)將每個(gè)壓縮結(jié)果存放到一個(gè)數(shù)組或大文本變量中之后并給一個(gè)有別于其中任何內(nèi)容的分割符,一起合并建立一個(gè)文件,不就OK了嗎!
如果再?gòu)?fù)雜些,比如壓縮的內(nèi)容都比較大,那就向Zip或Rar軟件學(xué)習(xí),先建立一個(gè)文件,在將結(jié)果一點(diǎn)一點(diǎn)的寫(xiě)進(jìn)去,不長(zhǎng)時(shí)間住留在內(nèi)存,或者使用多線(xiàn)程壓縮方法。無(wú)論怎樣其實(shí)就是您的那一個(gè)單個(gè)文件壓縮方法才是整個(gè)壓縮過(guò)程的核心技術(shù),其他的都是輔助!
一個(gè)都實(shí)現(xiàn)了還怕不能舉一反三嗎!
對(duì)補(bǔ)充問(wèn)題的有關(guān)回答:
看了您的這個(gè)代碼,有幾個(gè)問(wèn)題。
1、單個(gè)文件可以通過(guò)對(duì)嗎,而文件數(shù)組的參數(shù),原先只是一個(gè)文件名后來(lái)是您更改的對(duì)嗎?
2、您嘗試過(guò)將兩個(gè)不同文件壓縮到同一個(gè)Zip文件中是什么效果了嗎?
3、您提供的GZip流寫(xiě)入再追加一段壓縮流不行嘛?
4、為何不把GZip流寫(xiě)入某個(gè)Zip文件呢,之后在這個(gè)文件中再追加寫(xiě)入新文件的壓縮流。如果寫(xiě)入兩個(gè)文件流這個(gè)Zip就無(wú)法被Zip或Rar打開(kāi),那么估計(jì)是您寫(xiě)入的規(guī)則不正確,文件和文件之間肯定是有分割的,所以您應(yīng)該看看有關(guān)Zip二次開(kāi)發(fā)的技術(shù)輔助資料。
完畢?。?!
- 2 回答
- 0 關(guān)注
- 831 瀏覽
添加回答
舉報(bào)