スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

C# ToString()による数値→文字列変換とToString()のオーバーロードの話

コード載せることが増えたからはてなへの移行を検討しようかしら。
こっちは日記代わりにしてもいいかも。

ついに3号ですね敵ですねネクロムですね!!



さて、C#のObjectクラス、すなわちたいていのクラスには、ToString()メソッドが用意されています。
これにより、数値などを文字列に変換することができます。

また、このToString()メソッドにはいくつかオーバーロードがあります。
これを使うと、いろいろな書式の文字列に変換することができます。

ToStringメソッドのオーバーロードは、こちらにくわしく記載されています。

見た方がわかりやすいのでサンプルコード。


using System;

namespace myapp
{
class ToStr
{
static void Main(){
int value1 = 193;
double value2 = 7538.315;

Console.WriteLine("[ "+ value1.ToString() + " ]");
Console.WriteLine(value1.ToString("C"));
Console.WriteLine(value1.ToString("D5"));
Console.WriteLine(value1.ToString("E"));
Console.WriteLine(value1.ToString("F4"));
Console.WriteLine(value1.ToString("N"));
Console.WriteLine(value1.ToString("X"));

Console.WriteLine("[ "+ value2.ToString() + " ]");
Console.WriteLine(value2.ToString("C"));
Console.WriteLine(value2.ToString("E"));
Console.WriteLine(value2.ToString("F4"));
Console.WriteLine(value2.ToString("N"));
}
}
}


実行結果




ToString()の括弧の中に「書式指定子」と呼ばれるアルファベットと、「精度指定子」と呼ばれる数字を並べて書式を指定します。



表示桁数をそろえたいときなんかに使います。
たとえば、配列の中に保存されたint型の日付データをきれいに表示するときに便利です。

サンプルコード。
某シリーズ番組の放送開始日と時間を保存したint配列から、西暦以外のデータを2桁に揃えて表示しています。
通し番号は3桁指定。

using System;

namespace myapp
{
class Date
{
static void Main(){
int[,] date = new int[17,5]{{2000,1,30,8,0},
{2001,1,28,8,0},
{2002,2,3,8,0},
{2003,1,26,8,0},
{2004,1,25,8,0},
{2005,1,30,8,0},
{2006,1,29,8,0},
{2007,1,28,8,0},
{2008,1,27,8,0},
{2009,1,25,8,0},
{2009,9,6,8,0},
{2010,9,5,8,0},
{2011,9,4,8,0},
{2012,9,2,8,0},
{2013,10,6,8,0},
{2014,10,5,8,0},
{2015,10,4,8,0},};
for(int i = 0; i < 17;i++){
Console.WriteLine((i + 1).ToString("D3") + ": "
+ date[i,0].ToString("D2") + "年"
+ date[i,1].ToString("D2") + "月"
+ date[i,2].ToString("D2") + "日 "
+ date[i,3].ToString("D2") + "時"
+ date[i,4].ToString("D2") + "分");
}
}
}
}


実行結果



日付とかお金とか、あと小数点以下を揃えたいときに使いましょう。

それでは、今回はこの辺りで。
関連記事

コメント

非公開コメント
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。