压缩算法在网络应用程序中使用很广泛,今天说述一个开源的压缩算法。7zip这是一个开源的压缩算法,压缩比相当利害,我是因为想用在我的silverlight视频应用程序中的,不过测试后才发现这个算法占cpu极高,看似只能用于非实时性的应用才是正确的。
本文件的封装的代码是我从7zip官方网站下载回来自己改成可以让silverlight使用的。如果你有更特别的需求可以到http://www.7-zip.org/sdk.html下载其他形式的代码,还提供地java,c,c++等语言的代码。
我修改的代码您可以登陆后在本文附件中下载。
以下说述我封装的这个库的使用方法。
使用比较简单:先引用这个类库,然后通过以下代码实现加解压:
1: //以?下?是?加ó压1操ù作÷,?调÷用?compress方?法¨,?参?数y里?的?byte[]是?被?加ó压1的?数y据Y
2: //result即′是?加ó压1后ó的?数y据Y了?
3: byte[] result = SevenZip.Compression.LZMA.SevenZipHelper.Compress(byte[] data)
4: //以?下?是?解a压1操ù作÷,?调÷用?Decompress,?参?数y是?被?解a压1数y据Y
5: //reviewData即′是?解a压1后ó的?数y据Y了?
6: byte[] reviewData =SevenZip.Compression.LZMA.SevenZipHelper.Decompress(byte[] result);
7: 欢迎您参与更多关于此话题的讨论,本文原创地址为:http://funsl.com 谢绝转载
评论
我的項目中有使用Gzip壓縮,
後來clientUI要換成Silverlight時才發現沒有Gzip解壓縮可用,
幸好發現有SL版的SharpZLib可用,
原來大家都碰到的相同的問題, 呵呵呵:)