Delphi XE中String、ANSIString、TBytes之间的转换

来源:互联网 发布:二战日本兵力知乎 编辑:程序博客网 时间:2024/04/29 12:05
Delphi XE中String、ANSIString、TBytes之间的转换

一、string转为ansistring
1、直接赋值 (有警告)
2、ansistring()类型强制转换。(无警告)

二、ansistring 转为string

1、直接赋值 (有警告)
2、string()类型强制转换。(无警告)

三、string 转为Tbytes

1、bytes:= bytesof(str) 已转为ansi编码
2、bytes:= widebytesof(str) UNICODE 编码

四、ansistring 转为Tbytes

1、bytes:= bytesof(str) ansi编码

2、bytes:= widebytesof(string(str)) UNICODE 编码

注:

   在Berlin下使用bytes:= bytesof(str),得到的结果貌似不准确。与直接读取str中字符得到的tbytes不一样。


五、Tbytes 转为string

1、 str:=stringof(bytes) Tbytes 为ansi编码
2、 str:=widestringof(bytes) Tbytes 为unicode编码

六、PChar转String

用StrPas函数,StrPas(PChar):AnsiString;


转自:http://www.51wendang.com/doc/02ec0f49def3bd6e696bb1e1

0 0
原创粉丝点击