• delphi 汉字的编码 转换


    delphi 汉字的编码 转换  

    2009-10-07 21:57:00|  分类: delphi |  标签: |字号 订阅

     
     

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    var

    Str:String;

    begin

    Str:='张';

    Caption:=IntToHex(PWord(@Str[1])^,4);

    end;

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    这样也行

    a:='我';

    caption:=IntToStr(ord(a[1]))+IntToStr(ord(a[2]));

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    Caption:=IntToHex(PWord(@Str[1])^,4);

       得到的是16进制的代码

    caption:=IntToStr(ord(a[1]))+IntToStr(ord(a[2]));

    得到的是10进制的代码!

    不过好像应该是IntToStr(ord(a[2]))+IntToStr(ord(a[1])); 换一下位置!

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    汉字就是unicode,delphi里面有widestring类型,可以立即使用

    var

    s: widestring;

    i: integer;

    begin

    s := 'I am 中国人';

    for i := 1 to length(s) do

        showmessage(inttostr(ord(s[i])));

    end;

    标准的写法,韩文,日文都可以这样处理。

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    要比较汉字, 你只要将这两个字节一一对比, 两个字节都相同,当然是一个汉字了。

    一个汉字由两个字节组成,要判断连续的两个字节是否汉字,

    关键是看其第一个字节是否满足 >=$a0 条件, 这个条件对GBK汉字都适用

    而如果一个汉字是GB2312中定义的最常用的6763个汉字,

    则第一个字节和第二个节字都必须满足>=$a0 条件的条件

    showmessage(chr($CB)+chr($CE)); //显示 宋 字

    宋字的区位码是: 4346

    宋字的国标码是: CBCE    (16进制)

    另外来几个

    showmessage(chr($B5)+chr($CB)); //显示 邓 字

    showmessage(chr($D0)+chr($A1)); //显示 小 字

    showmessage(chr($C6)+chr($BD)); //显示 平 字

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    to tosleep:

    uses widechar(ord(s[i]))

    simple example:

    var

    c1: widechar;

    c2: widechar;

    i: integer;

    s: widestring;

    begin

    s := '汉';

    c1 := s[1];

    i := ord(c1);

    c2 := widechar(i);

    showmessage(c2);

    end;

    奇怪上面个别人的发言,windows和delphi都已经有了对unicode的支持,为什么不用呢?

    ━━━━━━━━━━━━━━━━━━━━━━━━━━

    【delphi类型转换 asc与char】

    ord(char) = asc

    chr(asc) = char

    inttohex(int,1) = hex (string)

    使用AStr[i]取AStr:String中的第i个字符时需要注意的事项:

    这里i表示第i个字符,并不是通常的0表示第1个,i表示第i+1个。

  • 相关阅读:
    jQuery Mobile方向感应事件
    Linq-多条件查询
    linux top命令详解
    在Python中调用C++,使用SWIG
    linux下core文件调试方法
    如何设置、查看以及调试core文件
    标准C++中的string类的用法总结(转)
    实用make最佳实践
    GDB多进程调试(转)
    GDB详解
  • 原文地址:https://www.cnblogs.com/hcwp/p/3629354.html
Copyright © 2020-2023  润新知