Delphi 把流中的字符串转换为 UTF 格式


本文整理自网络,侵删。

 unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
stream1,stream2: TStringStream;
b: Byte;
bs: string;
begin
{建立第一个流, 使用默认的双字节编码; 流中的数据是 Memo 中的字符串}
stream1 := TStringStream.Create(Memo1.Text, 54936);

{把第一个流的十六进制编码显示在 Memo 中}
bs := '';
for b in stream1.Bytes do bs := Format(bs + '%2x ', [b]);
Memo1.Lines.Add(bs);

{建立第二个流, 用 UTF8 编码; 还是基于第一个流中的字符串}
stream2 := TStringStream.Create(stream1.DataString, TEncoding.UTF8);

{把第二个流的十六进制编码显示在 Memo 中}
bs := '';
for b in stream2.Bytes do bs := Format(bs + '%2x ', [b]);
Memo1.Lines.Add(bs);

stream1.Free;
stream2.Free;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Align := alTop;
Memo1.ScrollBars := ssBoth;
Memo1.Text := '万一的 Delphi 博客';
end;

end.

 

来源:https://www.cnblogs.com/del/archive/2008/12/26/1362978.html

相关阅读 >>

Delphi Delphi copy,pos,delete win api 版

Delphi 安卓 app 动态权限申请

Delphi jpg/jpeg 图片缩放函数

Delphi 提取字符串左侧内容

Delphi 实现检测线程类tthread是否结束

Delphi在case语句中使用字符串

Delphi richedit接受消息的问题

Delphi编程之桌面图标设置

Delphi 字符串左右添加字符

Delphi获取webbrowser中的元素的值

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



打赏

取消

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

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

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

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

评论

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