UniCode 轉 GB 函數

本文介绍了一个用于将Unicode编码转换为GB编码的Delphi函数。该函数支持从16进制和10进制Unicode表示形式转换,并通过具体示例展示了如何使用此函数进行转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

UniCode 轉 GB 函數

 

參考資料:http://hi.baidu.com/3228911/blog/item/a6bd37a3c27883a6cbefd0c0.html

 

/*
中    文: 請輸入密碼

16進制: /u8ACB/u8F38/u5165/u5BC6/u78BC

10進制: #35531#36664#20837#23494#30908

*/

 

function TForm1.UniCodeToGB(UStr: String): String;
Var
  s1: string;
begin
  s1 := UStr;
  Result := '';
  if pos('/u', s1)> 0 then
  begin
    //16進制轉換
    s1 := StringReplace(s1,'/u','',[rfReplaceAll]);
    //
    while Length(s1) >= 4 do
    begin
      Result := Result + WideChar(StrToInt('$'+ s1[1] + s1[2] + s1[3] + s1[4]));
      s1 := Copy(s1, 5, MaxInt);
    end;
  end
  else if pos('#', s1)> 0 then
  begin
    //10進制轉換
    s1 := StringReplace(s1,'#','',[rfReplaceAll]);
    //
    while Length(s1) >= 5 do
    begin
      Result := Result + WideChar(StrToInt(s1[1] + s1[2] + s1[3] + s1[4] + s1[5]));
      s1 := Copy(s1, 6, MaxInt);
    end;
  end;
  //
  Result := Result + s1;
end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值