引数指定
何番目の引数を使うかを数値で指定。
string.Format("{1} {1} {0}", 12, 34);
34 34 12
10進数
書式指定子に D or d 。
string.Format("{1:D} {0:D}", 12, 34);
34 12{1:D} の 1 は引数の番号を指定。 D で10進数を指定。この場合は 34 を10進数で表示。
string.Format("{1:d} {0:d}", 12, 34);
34 12小文字 d でもOK、違いは無い。
浮動小数点数
書式指定子に F or f 。
string.Format("{0:F}", 1234.5678);
1234.57小数点以下の桁数指定を省略した時は NumberFormatInfo の設定によって変わります。
string.Format("{0:f}", 1234.5678);
1234.57小文字の f でもOK、違いは無い。
string.Format("{0:F1}", 1234.5678);
1234.6小数点以下の桁数1表示。
string.Format("{0:F3}", 1234.5678);
1234.56780小数点以下の桁数5表示。
16進数
書式指定子に X or x 。
string.Format("{0:X} {1:X}", 15, 16);
F 10string.Format("{0:x} {1:x}", 15, 16);
f 10X の場合にはアルファベット部分を大文字、 x の場合は小文字で表示。
型によっていい感じに表示
書式指定子に G or 無し。
string.Format("{0:G}", 12345.6789);
12345.6789string.Format("{0}", 12345.6789);
12345.6789string.Format("{0:G}", 123);
123string.Format("{0}", 123);
123
金額
書式指定子に C 。
string.Format("{0:C}", 1200);
$1,200.00string.Format(new System.Globalization.CultureInfo("ja-JP"), "{0:C}", 1200);
¥1,200
(1200).ToString("C", new System.Globalization.CultureInfo("ja-JP"));
¥1,200日本のカルチャを指定した時。日本の金額表示の為、$が¥マークに変わり、小数点部分が無くなっている事が確認できます。
ゼロ埋め
書式指定子の後に桁数。
string.Format("{0:D5} {1:D3}", 12, 34);
00012 034D5 の場合は5桁を指定。
桁数揃え
, の直後に数値で指定。書式指定子を使う場合には : で区切る。
string.Format("|{0,3}|", 12);
| 12|string.Format("|{0,3:D}|", 12);
| 12|string.Format("|{0,3:X}|", 12);
| C|string.Format("|{0,-3}|", 12);
|12 |マイナスの数値を指定すると左揃え。
string.Format("|{0,-3:D}|", 12);
|12 |string.Format("|{0,-3:X}|", 12);
|C |
関連情報
標準の数値書式指定子
https://msdn.microsoft.com/ja-jp/library/dwhawy9k(v=vs.80).aspx
カルチャと書式・テキスト処理・暦 - Programming/.NET Framework/ロケール(カルチャ) - 総武ソフトウェア推進所
http://smdn.jp/programming/netfx/locale/1_infoes/