流的解压及压缩(代码精简高效)

原创 2004年04月26日 22:07:00

用一个函数即实现流的压缩和解压,使用方法:

ZIP(源流,目标流,True/False)TRUE为压缩,FALSE为解压

函数如下:

function ZIP(mInputStream: TStream; mOutputStream: TStream;Compress:BOOL): BOOL;
var
  I: Integer;
  p:pchar;
  TCS:TCompressionStream;
  TDS:TDecompressionStream;
begin
 result:=false;
  if not (Assigned(mInputStream) and Assigned(mOutputStream)) then Exit;
 try
  if Compress then TCS:=TCompressionStream.Create(clMax,mOutputStream) else TDS:=TDecompressionStream.Create(mOutputStream);//其中的clMax表示压缩级别,可以更改,值是下列参数之一:clNone, clFastest, clDefault, clMax
  getMem(p,mInputStream.size);
  mInputStream.ReadBuffer(p^,mInputStream.Size );
  if Compress then TCS.WriteBuffer(p^,mInputStream.Size ) else TDS.WriteBuffer(p^,mInputStream.Size );  //关键代码:写入流
 finally
  if Compress then TCS.Free else TDS.Free;
  FreeMem(p);
 end;
 result:=true;
end;

 

一定先uses Zlib这个单元,它提供了DELPHI下的压缩和解压功能

真正好用的delphi gzip解压代码

procedure DecompressGZip(AInStream, AOutStream: TStream); var   pb1, pb2: Byte; begin   AInStrea...
  • shixueli
  • shixueli
  • 2015年10月09日 17:04
  • 1762

Delphi的一个超级函数代码库

  • 2010年03月29日 22:30
  • 541KB
  • 下载

Delphi压缩流和解压流的应用

软件开发者不免都要遇到压缩数据的问题!经常使用Delphi的朋友都知道,它为我们提供了两个流类(TCompressionStream和TDecompressionStream)来完成数据的压缩和解压缩...
  • mpg2012
  • mpg2012
  • 2013年09月09日 09:57
  • 2059

c#中关于压缩数据流和解压数据流的实现

c#中压缩数据流的方法 在网上找了很久没有找到ziji
  • zhujunxxxxx
  • zhujunxxxxx
  • 2014年08月26日 19:03
  • 10040

使用Zlib对内存流及标准输入流进行压缩与解压缩

使用Zlib对内存流及标准输入流进行压缩与解压缩,以下是拼接官网zlib源代码文件的顺序。  zconf.h  zlib.h  zutil.h  gzguts.h  zutil.c  adler32....
  • i7thTool
  • i7thTool
  • 2017年01月06日 09:07
  • 830

在VC开发中使用简单灵巧的压缩/解压工具包LiteZip/LiteUnzip

一 引言 在实际开发中,我们往往会涉及一些数据(或文件)压缩/解压操作其目的不单单是为了缩小软件的尺寸,有时还有压缩/藏匿的意图当然,对于某些特定的软件,压缩/解压部分几乎是必需的模块 在本文中,...
  • comma851001
  • comma851001
  • 2016年09月26日 17:17
  • 350

实现Java代码压缩解压

原因:某个时间想对服务器上的zip中的某些文件进行修改 本来以为很简单的事情,在网上找了好些代码,结果效果都不是很理想。 实现对象:对各种类型的文件夹(包含子文件或子文件夹) 下...
  • stven_king
  • stven_king
  • 2015年04月02日 16:26
  • 1410

C# 文件流压缩解压

/// /// 文件流压缩解压 /// public class ZipHelper { public static int BEST_COMPRE...
  • xunzaosiyecao
  • xunzaosiyecao
  • 2015年11月09日 12:16
  • 3162

Zlib.net 解压压缩 数据流 对应java 使用

首先下载:http://zlibnet.codeplex.com/
  • tanbo327
  • tanbo327
  • 2014年04月24日 09:30
  • 1365

精简高效的CSS命名准则/方法

by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=1098 一、...
  • kaosini
  • kaosini
  • 2015年02月04日 09:41
  • 467
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:流的解压及压缩(代码精简高效)
举报原因:
原因补充:

(最多只允许输入30个字)