2017-06-08 16 views
3

値の文字列表現に明確な数の記号(8など)が割り当てられるように倍精度を印刷する必要があります。次の単語は、各文字列の最初の文字列と同じインデックスから開始する必要があります。今、私が持っている:文字列補間を使用して列に文字列を書式設定する

value: 0 test 
value: 0.3333333333333 test 
value: 0.5 test 

私が必要:

value: 0   test 
value: 0.33333333 test 
value: 0.5   test 

テストコード:

double[] ar = new double[] { 0, (double)1/3, (double)1/2 }; 
string s = "test"; 

foreach (var d in ar) 
{ 
    Console.WriteLine($"value: {d} {s}"); 
} 

を私は{d:後に追加する必要がありますか?

答えて

6

この目的でAlignment Componentを使用できます。このように:

Console.WriteLine($"value: {d,-17} {s}"); 

任意の配向成分が好ましいフォーマットフィールド幅を示す符号付き整数です。整列の値が書式設定された文字列の長さよりも小さい場合、整列は無視され、書式設定された文字列の長さがフィールドの幅として使用されます。フィールドの書式設定されたデータは、配置が正の場合は右揃え、配置が負の場合は左揃えになります。パディングが必要な場合は、空白が使用されます。整列が指定されている場合は、カンマが必要です。

あなたが最初の列は左揃えなりたいので、我々は負のアライメントを使用する理由だから、これはあります。