delphi 中 unicode 转汉字 函数

近期用到这个函数,无奈没有找到 delphi 自带的,网上找了下 有类似的,没有现成的,我需要的是 支持 “\u4f00 ” 这种格式的,即前面带标准的 “\u”  于是改造了一下。

下面是 解码 函数:

方便有需要的人吧,我自己也需要^_^

 /// <summary>
    /// // Unicode转汉字 ,支持自动过滤非 unicode编码,即非 unicode编码不转换
    ///  只支持 标准的 类型 \u4e00  这种格式的 转换, 以\u 开头的
    ///  code by 猿哥哥 2015-2-11
    /// </summary>
 function TMyEncode.UnicodeToChinese(inputstr:string):string;
var
i:Integer;
index:Integer;
temp,top,last:string;
begin
   index:=1;
   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;

 

转载于:https://www.cnblogs.com/forcoder/p/4286345.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值