String Format for Double [C#]


String Format for Double [C#]
次の例では、C#の文字列で浮動小数点数をフォーマットする方法を示します.静的方法を使うことができますFormatまたはインスタンスメソッドdouble.ToStringとfloat.ToString
小数点以下の数字
この例のフォーマットの2桁の小数固定長の文字列.小数点以下2桁の場合は、「0.00」を使用します.浮動小数点数が少ない場合、右の残りの数はゼロになります.より多くの小数がある場合は、四捨五入します.
[C#]
// just two decimal places
String.Format("{0:0.00}", 123.4567);      // "123.46"
String.Format("{0:0.00}", 123.4);         // "123.40"
String.Format("{0:0.00}", 123.0);         // "123.00"


次の例では、フォーマット文字列の浮動小数点数と小数点数を示します.例えば最大の小数点以下2桁の使用パターン"0.##".
[C#]
// max. two decimal places
String.Format("{0:0.##}", 123.4567);      // "123.46"
String.Format("{0:0.##}", 123.4);         // "123.4"
String.Format("{0:0.##}", 123.0);         // "123"


小数点前の数字
浮動小数点数の前に最も少ない数がほしい場合は、小数点数はN回の小数点数の前のゼロを使用します.たとえば、小数点以下の2桁について「00.0」を使用します.
[C#]
// at least two digits before decimal point
String.Format("{0:00.0}", 123.4567);      // "123.5"
String.Format("{0:00.0}", 23.4567);       // "23.5"
String.Format("{0:00.0}", 3.4567);        // "03.5"
String.Format("{0:00.0}", -3.4567);       // "-03.5"


千桁区切り文字
2文字列をフォーマットするには、ゼロとカンマで区切る前の通常の浮動小数点フォーマットモードを使用します.たとえば、モード「0,0.0」のフォーマットの数、千桁の区切り文字を使用し、小数点以下のビットを使用します.
[C#]
String.Format("{0:0,0.0}", 12345.67);     // "12,345.7"
String.Format("{0:0,0}", 12345.67);       // "12,346"     


0
0と1の間の浮動小数点数は、先頭のゼロ小数点以下を持たないか、または持たないかの2つの方法でフォーマットできます.#の先頭ポイントをフォーマットするには、先頭ゼロの数値は使用されません.たとえば、#.0形式には、小数点以下の小数点以下の小数点以下の小数点以下の小数点以下の小数点以下の小数点以下の数(たとえば、「5」または「123.5」)があります.
次のコードでは、ゼロ(doubleタイプ)をフォーマットする方法を示します.
[C#]
String.Format("{0:0.0}", 0.0);            // "0.0"
String.Format("{0:0.#}", 0.0);            // "0"
String.Format("{0:#.0}", 0.0);            // ".0"
String.Format("{0:#.#}", 0.0);            // ""


数値をスペースで整列
右揃え:「はい」、「後は変わりません.次に、タイプカンマ「0,10:0.0」などの数のスペースがあります(double.ToStringメソッドではなくString.Formatメソッドを使用できます).左揃え:「はい」、「後は-」
[C#]
String.Format("{0,10:0.0}", 123.4567);    // "     123.5"
String.Format("{0,-10:0.0}", 123.4567);   // "123.5     "
String.Format("{0,10:0.0}", -123.4567);   // "    -123.5"
String.Format("{0,-10:0.0}", -123.4567);  // "-123.5    "


負とゼロのカスタムフォーマット
負の浮動小数点数またはゼロのカスタムフォーマットを使用する必要がある場合は、セミコロンで区切ります.モードの3つの部分に分けます.第1部分正数フォーマット、負数第2部分フォーマット、および第3部分フォーマットゼロ.最後のセクションを省略すると、ゼロの最初の部分がフォーマットされます.
[C#]
String.Format("{0:0.00;minus 0.00;zero}", 123.4567);   // "123.46"
String.Format("{0:0.00;minus 0.00;zero}", -123.4567);  // "minus 123.46"
String.Format("{0:0.00;minus 0.00;zero}", 0.0);        // "zero"


いくつかの面白い例
前の例では、テキスト形式のモードを任意に入れることができます.たとえば、以前は通常のモード「my number is 0.0」でした.ゼロの間の任意のテキスト、例えば「0 aaa.bbb 0」を使用することもできます.
[C#]
String.Format("{0:my number is 0.0}", 12.3);   // "my number is 12.3"
String.Format("{0:0aaa.bbb0}", 12.3);          // "12aaa.bbb3"


See also
  • [C#] String Format for Int – format (align) integer numbers
  • [C#] String Format for DateTime – format date and time
  • [C#] IFormatProvider for Numbers – format and parse float numbers using CultureInfo
  • [C#] Custom IFormatProvider – string formatting with custom IFormatProvider
  • [C#] Align String with Spaces – how to align text to the right or left
  • [C#] Indent String with Spaces – how to indent text with repeated spaces
  • MSDN Examples – MSDN examples for custom numeric formatting
  • String.Format – MSDN – method to format strings
  • Double.ToString – MSDN – formats double to string

  • ソース:http://www.csharp-examples.net/string-format-double/