C#を攻略しよう

c#

string.Formatで書式指定

ToStringを使って変換する        string.Formatで書式指定


[TOP]


stringクラスのFormatメソッドを使って書式指定した後、各種変換を行う方法を解説します。

以下にサンプルコードを示します。(各種コントロールの配置は、前ページのToStingによる変換の時と同じです。)

private void button1_Click(object sender, EventArgs e)
{

     try
     {
         label1.Text = string.Format("{0,0:X5}", Convert.ToInt32(textBox1.Text));
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
}

上記サンプルでは、テキストボックスに入力された数値を、5桁の16進数に変換します。

表示結果は、0002A のように表示されます。

<解説>

Formatの引数について解説します。

例:string.Format(”{0,3}月{1,3}日",5,3);  

結果:  5月  3日

{ }内の左側の数字は指定する引数の番号(順番)で、コンマの右側が幅を指します。

例:string.Format(”{0,0:X5}",10); 

結果: 0000A

引数の左側は、引数の番号で、コンマで区切った後、,0:X5のように指定しいますが、
0が幅、コロン(:)で区切った後、Xは16進数を表す書式指定子X 
その隣の5は 5桁で表し空白になる場合は0で埋めることを表しています。

{ }内の書式の構文は次のとおりです。

{引数の番号、幅:書式指定子 桁数}

指定できる書式指定子には主に次のようなものがあります。

C 通貨(例: \111,11 )
D 10進数(例: 123 )
E 浮動小数点(例: 1.23E+006)
F 固定小数点(例: 123.123)
N 数値(例: 153,216 )
P パーセント(例: 100%)
X 16進数(例: 2F35)
00000 桁揃え(例: 00135)

 

 

 

※当サイトは、リンクフリーです。