delphi 多种编码转换


本文整理自网络,侵删。

 function AnsiToUnicode(Ansi: string):string; 
var
s:string;
i:integer;
j,k:string[2];
a:array [1..1000] of char;
begin
s:='';
StringToWideChar(Ansi,@(a[1]),500);
i:=1;
while ((a[i]<>#0) or (a[i+1]<>#0)) do begin
j:=IntToHex(Integer(a[i]),2);
k:=IntToHex(Integer(a[i+1]),2);
s:=s+k+j;
i:=i+2;
end;
Result:=s;
end;

function ReadHex(AString:string):integer;
begin
Result:=StrToInt('$'+AString)
end;

function UnicodeToAnsi(Unicode: string):string;
var
s:string;
i:integer;
j,k:string[2];
begin
i:=1;
s:='';
while i<Length(Unicode)+1 do begin
j:=Copy(Unicode,i+2,2);
k:=Copy(Unicode,i,2);
i:=i+4;
s:=s+Char(ReadHex(j))+Char(ReadHex(k));
end;
if s<>'' then
s:=WideCharToString(PWideChar(s+#0#0#0#0))
else
s:='';
Result:=s;
end;

function ToGBK(Str:string):string;
begin
result := inttohex(byte(Str[1])*$100+byte(Str[2]),2);
end;

相关阅读 >>

Delphi webbrowser1 querystatuswb

Delphi 更改消息对话框中的按钮标题

delhpi如何直接获得webbrowser输入的xml文件

Delphi strutils.leftstr、strutils.rightstr - 提取左右字符串

Delphi 解决strtodatetime()不是有效日期类型的问题

Delphi xe新语法/新功能

Delphi android实例-trectangle加载图片(xe8+小米2)

Delphi twebbrowser 响应回车键(ewb响应正常,无需额外代码)

Delphi createmessagedialog

Delphi 窗体内控件实现滚动字母

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



打赏

取消

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

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

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

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

评论

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