2012-12-06 29 views
1

我想壓縮小文(400個字節),而在另一側解壓壓縮ASCII文本。如果我使用標準壓縮器(如rar或zip)來執行此操作,它會將元數據與壓縮文件一起寫入,並且文件本身更大..如何在沒有架空

有沒有辦法在沒有此元數據的情況下壓縮文件並將其打開與已知的前方參數?

+0

http://stackoverflow.com/questions/732578/what-is-the-best-compression-algorithm-for-small-4-kb-files –

+0

詳細介紹您的輸入數據的邊界 - 他們字典英語單詞? –

+0

不,它不是字典單詞,但它們是ASCII符號。 – Anderson

回答

0

您可以使用Huffman編碼來看看壓縮。以herehere爲例。

+0

試過霍夫曼算法,從357字節的文件壓縮我到5335字節..也許我不明白它是如何工作的?我用這個實現http://code.activestate.com/recipes/576603-huffman-coding-encoderdeconder/ – Anderson

2

你可以做原料deflate壓縮與zlib。這避免了甚至是zlib格式的六字節標題和尾部。

但是你會發現,你仍然不會得到太多的壓縮,如果有的話,只有400字節的輸入。壓縮算法比需要滾動的歷史需要更多的歷史記錄,以便構建統計數據並查找數據中的冗餘。

您應該考慮使用字典方法,在該方法中,您可以創建代表字符串的字典以提供壓縮器的某些功能,或者可以將這些400字節字符串的序列視爲一個解壓縮爲在另一端的流。