Delphi 中将TMemoryStream转换为'String'


本文整理自网络,侵删。

 
function StreamToString(aStream: TStream): string;
var
  SS: TStringStream;
begin
  if aStream <> nil then
  begin
    SS := TStringStream.Create('');
    try
      SS.CopyFrom(aStream, 0);  // No need to position at 0 nor provide size
      Result := SS.DataString;
    finally
      SS.Free;
    end;
  end else
  begin
    Result := '';
  end;
end;



function StreamToString(const Stream: TStream; const Encoding: TEncoding): string;
var
  StringBytes: TBytes;
begin
  Stream.Position := 0;
  SetLength(StringBytes, Stream.Size);
  Stream.ReadBuffer(StringBytes, Stream.Size);
  Result := Encoding.GetString(StringBytes);
end;
它仅在Delphi XE7中经过测试。

相关阅读 >>

实现拖动无标题窗口的5种方法

Delphi与正则表达式

Delphi判断系统是否安装tcp/ip协议

Delphi udp文件传输

Delphi绘制标题栏

win7下使用Delphi7的方法

Delphi获取程序自身路径的函数

Delphi判断字符是否是汉字

Delphi 中的包开发

Delphi 一个不错的枚举进程例子

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...