• 用delphi生成GBK 中文编码 表(4~5) GBK/4~5: 0xAA40~0xFEA0(部分) 扩充汉字 包括繁体 0xA


    http://www.cnblogs.com/jfyes/archive/2009/09/24/1573638.html

      GBK 中文编码: (* GBK是GB2312的扩展,是向上兼容的,因此GB2312中的汉字的编码与GBK中汉字的相同。 
    GBK中每个汉字仍然包含两个字节, 第一个字节的范围是0x81-0xFE(即129-254),第二个字节的范围是0x40-0xFE
    (即64-254)。GBK中有码位23940个, 包含汉字21003个。
    --------------------------------------
    GBK/1: 0xA1A0~0xA9EF(部分) GB2312非汉字符号
    GBK/2: 0xB0A0~0xF7FE(部分) GB2312汉字
    上面两个是GB2312的扩展,是向上兼容的;
    --------------------------------------------------------------
    GBK/3: 0x8140~0xA0FE(部分) 扩充汉字 包括繁体 ---->上一篇博客已发表 
    GBK/4: 0xAA40~0xFEA0(部分) 扩充汉字 包括繁体
    GBK/5: 0xA840~0xA995(部分) 扩充非汉字



    procedure Tfm_Words.Button5Click(Sender: TObject);
    var
      A, B: Cardinal;
      I, J: Integer;
      sHex: 
    string;
      s1: WideString;
      ss: 
    string;
    begin
    //
    GBK/5: 0xA840~0xA995(部分) 扩充非汉字
      ss :
    = #13#10+
            
    '                GBK/5: $A840~$A996(部分) 扩充非汉字                '#13#10+
            
    '                                           jfyes 2008-07-07'#13#10#13#10;

      
    for  I:=  $A8 to $A9 do
      
    begin

         
    for J := $40 to $96 do
         
    begin

           sHex :
    = Format('$%.2x%.2x', [I, J]);
           A :
    = SysUtils.StrToIntDef(sHex, 0);
           
           
    if J = $40 then
             ss :
    = ss+ 'code  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F ';


           
    if J in [$40, $50,$60, $70, $80,$90, $A0, $B0, $C0, $D0, $E0, $F0] then
             ss :
    = ss + #13#10 + sHex+ #32;

           
    if J <> $7F then
             ss :
    = ss + Char(I) + Char(J) + #32
           
    else ss := ss + #32#32#32


         
    end;
         ss :
    = ss + #13#10#13#10;
      
    end;
    self.memo1.lines.add(ss, True);
    end;  

    执行结果如下:
    ------------------------------------------------------------------------------
                    GBK/5: $A840~$A996(部分) 扩充非汉字                
                                  
    code  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F 
    $A840 ˊ ˋ ˙ – ― ‥ ‵ ℅ ℉ ↖ ↗ ↘ ↙ ∕ ∟ ∣ 
    $A850 ≒ ≦ ≧ ⊿ ═ ║ ╒ ╓ ╔ ╕ ╖ ╗ ╘ ╙ ╚ ╛ 
    $A860 ╜ ╝ ╞ ╟ ╠ ╡ ╢ ╣ ╤ ╥ ╦ ╧ ╨ ╩ ╪ ╫ 
    $A870 ╬ ╭ ╮ ╯ ╰ ╱ ╲ ╳ ▁ ▂ ▃ ▄ ▅ ▆ ▇    
    $A880 █ ▉ ▊ ▋ ▌ ▍ ▎ ▏ ▓ ▔ ▕ ▼ ▽ ◢ ◣ ◤ 
    $A890 ◥ ☉ ⊕ 〒 〝 〞  

    code  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F 
    $A940 〡 〢 〣 〤 〥 〦 〧 〨 〩 ㊣ ㎎ ㎏ ㎜ ㎝ ㎞ ㎡ 
    $A950 ㏄ ㏎ ㏑ ㏒ ㏕ ︰ ¬ ¦  ℡ ㈱  ‐    
    $A960 ー ゛ ゜ ヽ ヾ 〆 ゝ ゞ ﹉ ﹊ ﹋ ﹌ ﹍ ﹎ ﹏ ﹐ 
    $A970 ﹑ ﹒ ﹔ ﹕ ﹖ ﹗ ﹙ ﹚ ﹛ ﹜ ﹝ ﹞ ﹟ ﹠ ﹡    
    $A980 ﹢ ﹣ ﹤ ﹥ ﹦ ﹨ ﹩ ﹪ ﹫        
    $A990       〇 



    procedure Tfm_Words.Button4Click(Sender: TObject);
    var
      A, B: Cardinal;
      I, J: Integer;
      sHex: 
    string;
      s1: WideString;
      ss: 
    string;
    begin   //GBK/4: 0xAA40~0xFEA0(部分) 扩充汉字 包括繁体
      ss :
    = #13#10+
            
    '                GBK/4: $AA40~$FEA0(部分) 扩充汉字全表                '#13#10+
            
    '                                           jfyes 2008-07-07'#13#10#13#10;

      
    for  I:=  $AA to $FE do
      
    begin

         
    for J := $40 to $A0 do
         
    begin

           sHex :
    = Format('$%.2x%.2x', [I, J]);
           A :
    = SysUtils.StrToIntDef(sHex, 0);
           
           
    if J = $40 then
             ss :
    = ss+ 'code  +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F ';


           
    if J in [$40, $50,$60, $70, $80,$90, $A0, $B0, $C0, $D0, $E0, $F0] then
             ss :
    = ss + #13#10 + sHex+ #32;

           
    if J <> $7F then
             ss :
    = ss + Char(I) + Char(J) + #32
           
    else ss := ss + #32#32#32


         
    end;
         ss :
    = ss + #13#10#13#10;
      
    end;

    self.memo1.lines.add(ss, True);
    end;
    执行结果如下:
    ------------------------------------------------------------

                    GBK/4: $AA40~$FEA0(部分) 扩充汉字全表  

  • 相关阅读:
    小码哥IOS大神班11期 大神班
    最近整理的一些前端面试题
    emm, flutter来了, 对比下 RN?
    爱Pia戏服务协议
    linux cent下redis安装、密码设置、开机启动服务
    mysqld 不定时挂掉,使用定时任务cron检测到挂掉后自动重启mysql
    《结对-结对编项目作业名称-需求分析》
    结对编程
    课堂作业第0周
    App Distribution Guide (二)
  • 原文地址:https://www.cnblogs.com/linyawen/p/2196080.html
Copyright © 2020-2023  润新知