コード
文字列の場合
string str = Console.ReadLine();
//試しに1と入力
Console.WriteLine(str.PadLeft(3, '0'));
//001
Console.WriteLine("{0,3:d}", str);
//001
//空白を挿入する場合
Console.WriteLine(str.PadLeft(3, ' '));
// 1
//入力した文字数を含めた分の空白を入れる。この場合は空白2つ。
String.PadLeft()
は左側から順番に指定した文字数になるまで埋めていく。
String.PadRight()
はその逆。
数値の場合
int N = int.Parse(Console.ReadLine());
//1を入力
Console.WriteLine(N.ToString("d3"));
//001
Console.WriteLine(string.Format("{0:d3}", N));
//001
//逆に0詰めをする場合
Console.WriteLine(string.Format("{0,-3:d}a", N));
//1 a
//入力した文字数を含めた分の空白を入れる。この場合は空白2つ。
表示方法1つを取っても、様々な表し方があるのが面白いです。
ふと気になったのですが、
詰めるときのコードで表記している「d」は何の略語なんでしょうか…。
個人的には桁を意味するdigitの頭文字なのかな?と勝手に思っています。
何かを覚えるときは、意味を関連付けたほうが断然覚えやすいです。