Delphi Unicode转汉字 ,支持自动过滤非 unicode编码


本文整理自网络,侵删。

 
/// <summary>
    /// // Unicode转汉字 ,支持自动过滤非 unicode编码,即非 unicode编码不转换
    ///  只支持 标准的 类型 \u4e00  这种格式的 转换, 以\u 开头的
    ///  code by 猿哥哥 2015-2-11
    /// </summary>
function UnicodeToChinese(inputstr:string):string;
var
i:Integer;
index:Integer;
temp,top,last:string;
begin
  index:=1;
  //inputstr := '\'+inputstr;
  while index>=0 do
  begin
    index:= inputstr.IndexOf('\u');
    if index<0 then
    begin
      last:= inputstr;
      Result:= Result+ last;
      Exit;
    end;
    top:= Copy(inputstr,1,index); //取出 编码字符前的 非 unic 编码的字符,如数字
    temp:= Copy(inputstr,index+1,6);//取出编码,包括 \u    ,如\u4e3f
    Delete(temp,1,2);
    Delete(inputstr,1,index+6);
    result:= Result+ top+ WideChar( StrToInt('$'+ temp)) ;
  end;
end;

//用法 www.delphitop.com 搜集
procedure TForm1.FormCreate(Sender: TObject);
begin
memo1.text:=UnicodeToChinese('\u4e2d\u56fd\u4eba');
end;

相关阅读 >>

Delphi utf8处理单元

wmi技术介绍和应用――查询正在运行的进程信息

Delphi 提取字符中的数字

Delphi 在长文件名和短文件名之间转换

Delphi xe sha1

Delphi 利用for循环自我复制到全盘用timer监控

Delphi int64 与 currency

Delphi 获取上一次文件访问时间

Delphi listview 实现进度条显示

Delphi调用rest

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



打赏

取消

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

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

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

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

评论

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