文字列を出力する際に空白や0で埋める方法と、その桁数を変数化する方法です。
空白埋め
var str = "abcdefg";
Console.WriteLine($"{str,10}");
出力結果
abcdefg
0埋め(ゼロパディング)
int hoge = 1234567;// 数値でないとゼロパディングされない
Console.WriteLine($"{hoge:D10}");
出力結果
0001234567
埋める桁数を変数にする
var x = 10;// 桁数
var str = "abcdefg";
Console.WriteLine($"{{0,{x}}}", str);
出力結果
abcdefg
他の書式指定子と組み合わせる
var x = 10;// 桁数
for(int i = 0; i < 5; i++)
{
// 左詰め10桁、右詰め10桁(小数点以下第2位まで)
Console.WriteLine($"{{0, -{x}}} | {{1, {x}:f2}}|", $"i={i}", i / 0.3);
}
出力結果
i=0 | 0.00|
i=1 | 3.33|
i=2 | 6.67|
i=3 | 10.00|
i=4 | 13.33|