C#で整数や小数点のある数字をカンマ区切りの文字列に変換する方法について学びましょう。
この方法を使用すると、ユーザーフレンドリーで見やすい数値表示が可能です。
数値をtostringでカンマ区切り表示する
整数をカンマ区切りの文字列に変換するには、ToString メソッドを使用します。以下はその例です。
int number = 1000000.80;
string formattedNumber = number.ToString("N0");
Console.WriteLine(formattedNumber); // 出力: 1,000,000
//カンマ区切りのスタンダード記述
Console.WriteLine(number.ToString("N")); // 出力: 1,000,000.80
//カンマ区切りの小数点指定
Console.WriteLine(number.ToString("N1")); // 出力: 1,000,000.8
Console.WriteLine(number.ToString("N2")); // 出力: 1,000,000.80
この例では、N0 フォーマットを使用しています。これにより、整数がカンマ区切りの文字列に変換されます。
小数点をカンマ区切り文字列に変換する
小数点のある数字をカンマ区切りの文字列に変換する場合も同様に ToString メソッドを使用します。以下はその例です。
double number = 1234567.89;
string formattedNumber = number.ToString("N2");
Console.WriteLine(formattedNumber); // 出力: 1,234,567.89
ここでは N2 フォーマットを使用しています。これにより、小数点以下2桁までの数字が表示され、かつカンマ区切りになります。
広告
メソッドを使った変換方法
また、カンマ区切りへの変換を行うカスタムメソッドを作成することもできます。これにより、コードの再利用性が向上します。
using System;
class Program
{
static void Main()
{
int integerNumber = 987654321;
double decimalNumber = 12345.6789;
// 整数をカンマ区切り文字列に変換
string formattedInteger = FormatNumber(integerNumber);
Console.WriteLine(formattedInteger); // 出力: 987,654,321
// 小数をカンマ区切り文字列に変換
string formattedDecimal = FormatNumber(decimalNumber);
Console.WriteLine(formattedDecimal); // 出力: 12,345.68
}
static string FormatNumber(T number) where T : IFormattable
{
return number.ToString("#,##0.##");
}
}
この例では、FormatNumber メソッドを使用して整数と小数をカンマ区切りの文字列に変換しています。
ジェネリクスを使用しているため、異なる型に対しても対応しています。
広告
まとめ
C#で整数や小数点のある数字をカンマ区切りの文字列に変換する方法を学びました。
ToString メソッドを活用することで、手軽に見やすい表示が可能です。
また、カスタムメソッドを使用して柔軟な変換を行うことも覚えておくと便利です。