web-dev-qa-db-ja.com

Console.WriteLineメソッドのフォーマット文字列

C#プログラミングの初心者。誰かが次のコードを説明してください:

Console.WriteLine( "{0}{1,10}", "Face", "Frequency" ); //Headings
Console.WriteLine( "{0,4}{1,10}",someval,anotherval);

私はこれが与えられた見出しで値の2つの列を印刷し、{0}が与えられた最初の引数を参照することを理解しています。しかし、{x,y}という形式のフォーマット文字列の意味は何ですか?

24
Joe

左にパディングを追加します。さまざまな文字列フォーマットパターンを覚えるのに非常に便利なのが、次のチートシートです。

。NET String.Format Cheat Sheet

正の値は左側にパディングを追加し、負の値は右側にパディングを追加します

 Sample Generates 
 String.Format( "[{0、10}]"、 "Foo"); [∙∙∙∙∙∙∙Foo] 
 String.Format( "[{0、5}]"、 "Foo"); [∙∙Foo] 
 String.Format( "[{0、-5}]"、 "Foo"); [Foo∙∙] 
 String.Format( "[{0、-10}]"、 "Foo"); [Foo∙∙∙∙∙∙∙] 
56
Dirk Vollmar

{x,y}が表示されたら、xは引数のインデックスを表し、yは指定されたとおりのアライメントを表します here 。完全な構文は次のとおりです。

{index[,alignment][:formatString]}
8
digEmAll

これはパディング値です...引数が指定された長さでない場合、スペースを入れます。

例えば。 {0,10}があり、{0}の引数が「Blah」であった場合、印刷される実際の値は"Blah<SPACE><SPACE><SPACE><SPACE><SPACE><SPACE>"... Blah、10個の長さの文字列を構成するための6つの追加スペース

ps-実際のスペースをどのように入れるかわからない...検索する必要があるSO faq no

3
davidsleeps