汉=BABA(内码)=-A0A0=2626(区位码)
字=D7D6(内码)=-A0A0=5554(区位码)
//汉字转区位码
function Str2GB(const S: AnsiString): string;
const G = 160; // 160 = hA0
var n, m: word;
begin
n := Ord(S[1]);
m := Ord(S[2]);
Result := FormatFloat(‘00‘, n-G) + FormatFloat(‘00‘, m-G);
end;
//区位码转汉字
function GB2Str(const n: Word): string;
const G = 160;
begin //前2位数 //后2位数
Result := string(AnsiChar(n div 100 + G) + AnsiChar(n mod 100 + G));
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(GB2Str(StrToInt(Edit1.Text)));
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ShowMessage(Str2GB(AnsiString(Edit2.Text)));
end;
时间: 2024-10-12 20:48:24