想对byte数组压缩然后通过webservice发送,接收端再解压。
我希望解压和压缩能够全部在内存中完成,也不想用DataSet
来代替byte传送,尽量用Net1.0自带的类解决,有没有好的办
法,请给出示例代码。

解决方案 »

  1.   

    你的解压和压缩操作是对什么操作的,文件还是byte呢如果是文件的话,在内存中是不行,如果是byte的话,没问题。
      

  2.   

    在内存中的byte数组,当然数组内容是从一个语音文件中读取的。
      

  3.   

    用SharpZipLib, 有源代码的, 可以集成到项目里面去
      

  4.   

    SharpZipLib:网上多的是;还不错,挺好用的......
      

  5.   

    解压和压缩是很耗费时间和CPU资源的,楼主慎重啊~
      

  6.   


    SharpZipLib这个东西我知道,但是那个好像是针对文件的。如果这样做我不得不
    管理这些临时文件。由于具体情况的关系这个开销有点大,所以不打算作为首选。To 9raul(唯我) 
    先记账好不?To viena(维也纳nn木人 [IQ=50,EQ<0])
    谢谢提醒,我会注意的。可能是在客户端压缩上传,用的时候直接下载,在客户端解压。
    这样服务器就没有负担了,如果有更好办法请告知。To Knight94(愚翁)
    等待你的出现,你从我这里得到不少分数了。
      

  7.   

    to SharpZipLib这个东西我知道,但是那个好像是针对文件的。如果这样做我不得不
    管理这些临时文件。由于具体情况的关系这个开销有点大,所以不打算作为首选。不想用文件的方式,直接想对字节进行压缩的话,首先需要对需要压缩的数据有比较深的理解。例如编码是否有特征,或者数据中0比较多等等不同的特征可以采用不同的压缩算法。to 编码有特征
    进行编码替换,从而减少形成数据的字节数。to 数据中0比较多
    用稀疏矩阵来替换原先的数据存储结构。
      

  8.   

    SharpZipLib支持对byte[]数组压缩的。
    还有你读的是语音文件,可否考虑用有损压缩,比如先压缩成MP3
      

  9.   

    To Knight94(愚翁)
    有没有相关的类直接就可以拿来用?