[¥³¡¼¥É¤òʸ»ú¤ËÊÑ´¹¤¹¤ë]
¥³¡¼¥É¤«¤é³Æʸ»ú¥³¡¼¥É¤Îʸ»ú¤òɽ¼¨¤µ¤»¤Þ¤¹¡£
²¼µ¤Ï¡¢¤è¤¯»È¤ï¤ì¤ëʸ»ú¥³¡¼¥É¤Ç¤¹¡£
¡¡JIS SJIS EUC UTF-8 UTF-16 »ú
¡¡41 41 41 41 0041 A
¡¡42 42 42 42 0042 B
¡¡43 43 43 43 0043 C
¡¡2422 82A0 A4A2 E38182 3042 ¤¢
¡¡2424 82A2 A4A4 E38184 3044 ¤¤
¡¡2426 82A4 A4A6 E38186 3046 ¤¦
Delphi2009¤«¤éʸ»ú¥³¡¼¥É¤¬Unicode¤Ë¤Ê¤Ã¤¿¤½¤¦¤Ç¤¹¡£
¤½¤Î¤¿¤á¡¢Unicode¤ò¤½¤ì¤¾¤ì¤Îʸ»ú¥³¡¼¥É¤ËÊÑ´¹¤¬É¬ÍפǤ¹¤¬
ÊÑ´¹Àè¤Îʸ»úÎóÊÑ¿ô¤òÍÑ°Õ¤·¤Æ¡¢¤½¤ÎÊÑ¿ô¤ËÂåÆþ¤¹¤ë¤À¤±¤Çʸ»ú¥³¡¼¥É
¤ÎÊÑ´¹¤¬½ÐÍè¤Æ¤·¤Þ¤¤¤Þ¤¹¡£¤½¤·¤Æ¡¢ÊÑ´¹¸å¤Ëʸ»ú¤òɽ¼¨¤µ¤»¤Þ¤¹¡£
¥µ¥ó¥×¥ë¤Ï¡ÖA¡×¤È¡Ö¤¢¡×¤Î³Æʸ»ú¥³¡¼¥É¤Ç¤Î¥³¡¼¥É¤Ç¤¹¡£
¡Ú¥½¡¼¥¹¥³¡¼¥É¡Û¡¡[tips0015.pas]
program tips0015;
{$APPTYPE CONSOLE}
uses
SysUtils,Math;
type
SJISString = type AnsiString(932);
EUCJString = type AnsiString(20932);
EBCDICString = type AnsiString(20290);
var
Int : Integer;
S : String;
WS : WideString;
US : UnicodeString;
A : AnsiString;
SJIS: SJISString;
EUCJ: EUCJString;
U8 : UTF8String;
EBC : EBCDICString;
begin
WriteLn('¥³¡¼¥É¢ªÊ¸»úÊÑ´¹');
WriteLn(#13#10,'$41¡ÊA¡Ë¤ò³Æʸ»ú¥³¡¼¥ÉÊÑ¿ô¤ËÂåÆþ¤·¡¢Ê¸»ú¤È¥³¡¼¥É¤òɽ¼¨');
Int:=$41;
S:=Chr(Int); WS:=Chr(Int); US:=Chr(Int); A:=Chr(Int); SJIS:=Chr(Int); EUCJ:=Chr(Int); U8:=Chr(Int); EBC:=Chr(Int);
WriteLn(' String =', #9,S, #9,'$',IntToHex(Ord(S[1]),1));
WriteLn(' WideString =', #9,WS, #9,'$',IntToHex(Ord(WS[1]),1));
WriteLn(' Unicode =', #9,US, #9,'$',IntToHex(Ord(US[1]),1));
WriteLn(' AnsiString =', #9,A, #9,'$',IntToHex(Ord(A[1]),1));
WriteLn(' SJISString =', #9,SJIS, #9,'$',IntToHex(Ord(SJIS[1]),1));
WriteLn(' EUCJString =', #9,EUCJ, #9,'$',IntToHex(Ord(EUCJ[1]),1));
WriteLn(' UTF8String =', #9,U8, #9,'$',IntToHex(Ord(U8[1]),1));
WriteLn(' EBCDICString=', #9,EBC, #9,'$',IntToHex(Ord(EBC[1]),1));
WriteLn(#13#10,'$3042¡Ê¤¢¡Ë¤ò³Æʸ»ú¥³¡¼¥ÉÊÑ¿ô¤ËÂåÆþ¤·¡¢Ê¸»ú¤È¥³¡¼¥É¤òɽ¼¨');
Int:=$3042;
S:=WideChar(Int); WS:=WideChar(Int); US:=WideChar(Int); A:=WideChar(Int); SJIS:=WideChar(Int); EUCJ:=WideChar(Int); U8:=WideChar(Int);
WriteLn(' String =', #9,S, #9,'$',IntToHex(Ord(S[1]),1));
WriteLn(' WideString =', #9,WS, #9,'$',IntToHex(Ord(WS[1]),1));
WriteLn(' Unicode =', #9,US, #9,'$',IntToHex(Ord(US[1]),1));
WriteLn(' AnsiString =', #9,A, #9,'$',IntToHex(Ord(A[1])*256+Ord(A[2]),1));
WriteLn(' SJISString =', #9,SJIS, #9,'$',IntToHex(Ord(SJIS[1])*256+Ord(SJIS[2]),1));
WriteLn(' EUCJString =', #9,EUCJ, #9,'$',IntToHex(Ord(EUCJ[1])*256+Ord(EUCJ[2]),1));
WriteLn(' UTF8String =', #9,U8, #9,'$',IntToHex(Ord(U8[1])*256*256+Ord(U8[2])*256+Ord(U8[3]),1));
end.
¡Ú¥³¥ó¥Ñ¥¤¥ë¡õ¼Â¹Ô¡Û¡¡[tips0015.bat]
dcc32 tips0015.pas
tips0015.exe > tips0015.txt
pause
¡Ú¼Â¹Ô·ë²Ì¡Û¡¡[tips0015.txt]
¥³¡¼¥É¢ªÊ¸»úÊÑ´¹
$41¡ÊA¡Ë¤ò³Æʸ»ú¥³¡¼¥ÉÊÑ¿ô¤ËÂåÆþ¤·¡¢Ê¸»ú¤È¥³¡¼¥É¤òɽ¼¨
String = A $41
WideString = A $41
Unicode = A $41
AnsiString = A $41
SJISString = A $41
EUCJString = A $41
UTF8String = A $41
EBCDICString= ŽÁ $C1
$3042¡Ê¤¢¡Ë¤ò³Æʸ»ú¥³¡¼¥ÉÊÑ¿ô¤ËÂåÆþ¤·¡¢Ê¸»ú¤È¥³¡¼¥É¤òɽ¼¨
String = ¤¢ $3042
WideString = ¤¢ $3042
Unicode = ¤¢ $3042
AnsiString = ¤¢ $82A0
SJISString = ¤¢ $82A0
EUCJString = Ž¤Ž¢ $A4A2
UTF8String = åᤋ$E38182
Copyright c 2009, ohishi,All rights reserved.