张志峰的博客

水滴石川,积少成多。

导航

Delphi ORD

Posted on 2013-07-16 17:59  ╰★张志峰★╮  阅读(7003)  评论(0编辑  收藏  举报

//Char 类型与其编码值的转换:
var
b: Byte;
c: Char;
begin
b := Ord('A');   {返回: 65}
b := Ord(#65);   {返回: 65}
b := Ord($41);   {返回: 65}
b := Ord(#$41); {返回: 65}
b := Byte('A'); {返回: 65}
b := Byte(#65); {返回: 65}
b := Byte($41); {返回: 65}
b := Byte(#$41); {返回: 65}
c := Chr(65);    {返回: A }
c := Chr($41);   {返回: A }
c := Char(65);   {返回: A }
c := Char($41); {返回: A }
end;
--------------------------------------------------------------------------------

//WideChar 类型与其编码值的转换; 汉字的 UniCode 编码范围是: $4E00..$9FA5
var
w : Word;
c : WideChar;
ws: WideString;
s : string;
begin
{准备工作}
ws := '万一';
c := ws[1];
//ShowMessage(c); {万}
{从汉字到 UniCode 编码}
w := Ord(c);                  {返回十进制数        : 19975}
w := Word(c);                 {返回十进制数        : 19975}
s := Format('%.4x',[Ord(c)]); {返回十六进制的字符串: 4E07 }
s := IntToHex(Ord(c), 4);     {返回十六进制的字符串: 4E07 }
{从 UniCode 编码到汉字}
c := #19975;           {万}
c := #$4E07;           {万}
c := #$4e07;           {万}
c := WideChar(19975); {万}
c := WideChar($4E07); {万}
end;
 

--------------------------------------------------------------------------------
 
//Char 类型与其编码值的转换:
var
b: Byte;
c: Char;
begin
b := Ord('A');   {返回: 65}
b := Ord(#65);   {返回: 65}
b := Ord($41);   {返回: 65}
b := Ord(#$41); {返回: 65}
b := Byte('A'); {返回: 65}
b := Byte(#65); {返回: 65}
b := Byte($41); {返回: 65}
b := Byte(#$41); {返回: 65}
c := Chr(65);    {返回: A }
c := Chr($41);   {返回: A }
c := Char(65);   {返回: A }
c := Char($41); {返回: A }
end;
--------------------------------------------------------------------------------

//WideChar 类型与其编码值的转换; 汉字的 UniCode 编码范围是: $4E00..$9FA5
var
w : Word;
c : WideChar;
ws: WideString;
s : string;
begin
{准备工作}
ws := '万一';
c := ws[1];
//ShowMessage(c); {万}
{从汉字到 UniCode 编码}
w := Ord(c);                  {返回十进制数        : 19975}
w := Word(c);                 {返回十进制数        : 19975}
s := Format('%.4x',[Ord(c)]); {返回十六进制的字符串: 4E07 }
s := IntToHex(Ord(c), 4);     {返回十六进制的字符串: 4E07 }
{从 UniCode 编码到汉字}
c := #19975;           {万}
c := #$4E07;           {万}
c := #$4e07;           {万}
c := WideChar(19975); {万}
c := WideChar($4E07); {万}
end;

--------------------------------------------------------------------------------
 
ord 返回字符的ASCII编码值。
(ord(L[j]) - ord('0')) // 字符的ASCII码减去'0'的ASCII值。
看样子是一个二进制字符串,转十进制数字的函数。
    回答者:lwfcomputer  - 头衔:一星会员 2010-4-7 13:44:15  
 

--------------------------------------------------------------------------------
 
ord('0')返回的是字母“0”对应的ASCII码