如题!

解决方案 »

  1.   

    我定义一个字符串 s:='12312312312313哈啊哈'
    引用了 ZLib 单元却发现 Length (s) 大于 Length(ZCompressStr(s, zcDefault))  怎么回事,
    不小反而变大了,这还叫压缩吗??????
      

  2.   

    procedure TForm1.btn1Click(Sender: TObject);
    var
       S, a, FilesStr: string;
       sList: TStringList;
       bbyte: TBytes;
    begin
       sList := TStringList.Create;
       sList.LoadFromFile(ExtractFilePath(Application.ExeName) + '1.txt');
       FilesStr := sList.Text;
       sList.Clear;
       sList.Free;
       ShowMessage(IntToStr(Length(FilesStr))); //419776
       bbyte := ZCompressStr(FilesStr, zcDefault); // 37889
       ShowMessage(ZDecompressStr(bbyte));
    end;
    ZDecompressStr(bbyte) 感觉效率非常慢!!!!
      

  3.   

    压缩不一定就是变小啊 首先你压缩的数据至少得有一定的结构来标记你的压缩信息然后压缩后的大小也跟你的内容有关 如果50M的文件里面全是0那么压缩一下也许就只有1K 如果50M的文件全是乱七八糟的内容 也许压缩完还有48M而且压缩的时间也很长你的压缩的内容本身就很短变大是很正常的
    再说效率 压缩本身就是很占资源的~