|
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"全角文字を全部取得"
Shift-JIS コード #$81#$40〜#$FC#$FF の全角文字をすべて
TStrings データに取得します
procedure GetAllZenkaku(Strings: TStrings);
var
I: Word;
Buffer: PChar;
procedure PutData;
var
J, K: Word;
S: String;
begin
Strings.Add(' 0123456789ABCDEF');
for J := $4 to $F do
begin
S := IntToHex(I, 2) + IntToHex(J * $10, 2) + ':';
for K := 0 to $F do
begin
Buffer^ := Char(I);
(Buffer + 1)^ := Char(J * $10 + K);
S := S + Buffer;
end;
Strings.Add(S);
end;
Strings.Add('');
end;
begin
Strings.BeginUpdate;
try
Strings.Clear;
Buffer := StrAlloc(3);
try
Buffer[2] := #0;
for I := $81 to $9F do
PutData;
for I := $E0 to $FC do
PutData;
finally
StrDispose(Buffer);
end;
finally
Strings.EndUpdate;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
GetAllZenkaku(Memo1.Lines);
end;
のように使います。
**** 本田勝彦 http://member.nifty.ne.jp/~katsuhiko/ ****
- FDELPHI MES(16):玉石混淆みんなで作るSample蔵【見本蓄積】 01/02/02 -
Original document by 本田勝彦 氏 ID:(VYR01647)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|