JCL流使用

JCL封装了对Stream流的操作类,使用简单方便。这里主要说下TJclEasyStream类的使用,该类封装了常用数据类型的读和写,用来作数据缓存,网络接收发送Buffer太方便了。

uses
  JclStreams;

procedure test_easy_stream;
var
  buff: TJclEasyStream;
  str: string;
  b: boolean;
  n: integer;
begin
  //创建的时候,需要给一个托管的流实例,第二个参数表示该类释放的时候,是否释放托管实例  
  buff:= TJclEasyStream.Create(TMemoryStream.Create, True);  
  buff.WriteBoolean(true);
  buff.WriteInteger(123);
  buff.WriteCString('hello world');

  //流的读取也要按写入时候的顺序才行
  buff.Position:=0;  //这里从开始位置读取
  b:= buff.ReadBoolean;
  assert(b=true);
  
  n:= buff.ReadInteger;
  assert(n=123);
  
  str:= buff.ReadCString;
  assert(str='hello world');

  buff.free;
end;

猜你喜欢

转载自blog.csdn.net/ltk80/article/details/81699511
JCL