Home New Help Edit

Delphi Formatの使い方

http://delfusa.main.jp/delfusafloor/archive/www.nifty.ne.jp_forum_fdelphi/faq/00149.htm

15番会議室「FAQ編纂委員会」に寄せられた「よくある質問の答え」

[Q]
形式文字列を使うFormatは便利ですが、ヘルプの説明から形式文字列を作成 するのは骨が折れます。例示があると大変助かりますが。

[A]
 形式文字列を使うたびに、豊富な使用例があるとよいが、と思っていまし
た。SBORLAND および FDELPHI の過去ログから抜粋した使用例に、2・3例を
追加して、コンソール表示させてみたのが以下の例です。
 また、浮動小数点値を Format 形式にする、FormatFloat は過去ログにあ
った例示が少なかったため、ここに入れておきました。
[例]
program FormatStr; {$APPTYPE CONSOLE} uses Classes,SysUtils; var st1,st2: string; i,j,k: integer; r: real; begin i:=10; j:=100; {コンソールに表示されたもの} Writeln(Format('%d',[i])); {10} Writeln(Format('%3d',[i])); { 10} Writeln(Format('%.3d',[i])); {010} Writeln(Format('%03d',[i])); { 10} Writeln(Format('Edit%d',[i])); {Edit10} Writeln(Format('\%3.3d.',[i])); {\010.} Writeln(Format('%d%%',[i])); {10%} Writeln(Format(':%d',[i])); {:10} Writeln(Format('XY%.3d',[i])); {XY010} Writeln(Format('%d,%d',[i,j])); {10,100} Readln; r:=i; k:=2; Writeln(Format('%f',[r])); {10.00} Writeln(Format('%.0f',[r])); {10} Writeln(Format('%4.2f',[r])); {10.00} Writeln(Format('%2.3f ',[r])); {10.000} Writeln(Format('%3.1f 倍',[r])); {10.0 倍} Writeln(Format('%.7d %f',[7,1.234])); {0000007 1.23} Writeln(Format('%n',[r])); {10.00} Writeln(Format('%.0n',[r])); {10} Writeln(Format('%*.*n',[i,k,r])); { 10.00} Writeln(Format('%.0n',[r])); {10} Writeln(Format('%10.0n',[r])); { 10} Writeln(Format('%m',[r])); {\10} Writeln(Format('%12m',[r])); { \10} Writeln(Format('%X%x%X%x',[i,i+1,i+2,j])); {ABC64} Writeln(Format('%x%x%x%x',[1,2,3,4])); {1234} Writeln(Format('%.4x',[i])); {000A} Writeln(Format('%4X',[i])); { A} Writeln(Format('Icon Index is 0x%.4x',[i])); {Icon Index is 0x000A} Writeln(Format('$%02X',[i])); {'$ A'} st1:='東京都'; st2:='出府愛二'; Writeln(Format('%13s ',[st1])); { 東京都} Writeln(Format('%-10s%-10s%.5d',[st1,st2,i])); {東京都 出府愛二 00010} Readln; r:=10.12345; Writeln(Format('%f',[r])); {10.12} Writeln(Format('%.0f',[r])); {10} Writeln(Format('%4.2f',[r])); {10.12} Writeln(Format('%2.3f ',[r])); {10.123} Writeln(Format('%3.1f 倍',[r])); {10.1 倍} Writeln(Format('%.7d %f',[7,1.234])); {0000007 1.23} Writeln(Format('%n',[r])); {10.12} Writeln(Format('%.0n',[r])); {10} Writeln(Format('%*.*n',[i,k,r])); { 10.12} Writeln(Format('%.0n',[r])); {10} Writeln(Format('%10.0n',[r])); { 10} Writeln(Format('%m',[r])); {\10} Writeln(Format('%12m',[r])); { \10} Readln; Writeln(FormatFloat('0##',i)); {010} Writeln(FormatFloat('#,##0',i)); {10} Writeln(FormatFloat('0000',i)); {0010} Writeln(FormatFloat('#,###',i)); {10} Writeln(FormatFloat('###.0',i)); {10.0} Writeln(FormatFloat('0##',r)); {010} Writeln(FormatFloat('#,##0',r)); {10} Writeln(FormatFloat('0000',r)); {0010} Writeln(FormatFloat('#,###',r)); {10} Writeln(FormatFloat('###.0',r)); {10.1} Readln; end.
Copyright 1996-1998 Delphi Users' ForumFAQ編纂委員会

Home New Help Edit
2023-03-24 09:22:18 32400