C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で文字列リテラルをフォーマットする方法【String.Formatの使い方】


C#で文字列リテラルをフォーマットするには?

C#で文字列リテラルをフォーマットするには、String.Formatメソッドを使用します。このメソッドを使うと、波括弧「{}」で囲まれたプレースホルダーに値を挿入できるだけでなく、小数点以下の桁数や桁区切りなど、数値の表示形式も柔軟に指定できます。

プレースホルダー内の数字(例:{0})は、挿入するオブジェクトのインデックス(引数の位置)を表します。次の例では、{0}の位置にdecimal型の変数Aの値が文字列として埋め込まれます。

using System;

namespace Demo {
   class Test {
      static void Main(string[] args) {
         decimal A = 15.2m;
         string res = String.Format("Temperature = {0}°C.", A);
         Console.WriteLine(res);
      }
   }
}

このコードを実行すると、次のように出力されます。

Temperature = 15.2°C.

double型の値をフォーマットする

続いて、double型の数値をフォーマットする例を見てみましょう。書式指定子「0.000」は小数点以下3桁まで表示することを意味し、「0,0」はカンマによる桁区切り付きの表示を指定します。

サンプルコード

using System;

class Demo {
   public static void Main(String[] args) {
      Console.WriteLine("小数点以下3桁で表示...");

      Console.WriteLine(String.Format("{0:0.000}", 987.383));
      Console.WriteLine(String.Format("{0:0.000}", 987.38));
      Console.WriteLine(String.Format("{0:0.000}", 987.7899));

      Console.WriteLine("桁区切り(カンマ)付きで表示...");
      Console.WriteLine(String.Format("{0:0,0.0}", 54567.46));
      Console.WriteLine(String.Format("{0:0,0}", 54567.46));
   }
}

実行結果

小数点以下3桁で表示...
987.383
987.380
987.790
桁区切り(カンマ)付きで表示...
54,567.5
54,567

まとめ

String.Formatメソッドを使えば、インデックスベースのプレースホルダーで文字列に値を埋め込むだけでなく、「0.000」や「0,0」といった書式指定子によって、小数点以下の桁数やカンマ区切りの表示も簡単に制御できます。数値を見やすい形で出力したい場合に、ぜひ活用してみてください。

  1. Python 3で辞書を使って文字列をフォーマットする方法

    Pythonでは、辞書(dict)を活用して文字列への値の埋め込み(補間)を行うことができます。この構文では、%と変換文字の間の括弧内に、辞書のキー名を指定します。例えば、キーcostに格納された浮動小数点数を$xxxx.xxの形式で表示したい場合は、表示したい位置に$%(cost).2fと記述します。辞書を使った文字列フォーマットの基本例以下は、辞書を使った文字列フォーマットで、文字列と数値を同時に補間・整形する例です。>>> print(%(language)s has %(number)03d quote types. % {language: Python, numb

  2. Rubyの文字列フォーマット入門:%演算子と書式指定子の使い方

    この記事では、Rubyで文字列をフォーマットする方法について詳しく解説します。 なぜ文字列のフォーマットが必要なのでしょうか?例えば、10未満の数値にも先頭にゼロを付けて表示したい場合(01、02、03など)、あるいはコンソール出力を見やすいように桁を揃えて整形したい場合などが挙げられます。 他の言語ではprintf関数を使って文字列をフォーマットできます。C言語を使ったことがある人なら馴染み深いでしょう。printfでは、書式指定子(フォーマット指定子)のリストと、変数や値のリストを定義して使用します。 Rubyでの文字列フォーマットの基本 Rubyでもsprintfメソッドが利用可能ですが