- PR -

[C#] 整数なのか浮動小数点数なのか判断したい

投稿者投稿内容
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-06-19 20:26
引用:

Qさんの書き込み (2006-06-19 18:31) より:

結局、Double型の数値をそのままToStringして文字列化したものと
Convert.ToInt16をToStringして文字列化したものを単純に文字列比較して
一致しなければ小数点有りと判断する事にしました。

みなさん、貴重なご意見ありがとうございました。


書式形成の 「目的」 であれば、"判断の必要がない" と私以外にも何名かの方が書いているのですが...
判断が必要になるような記述が見当たらないのですが、何か理由はあるのでしょうか?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Qoo
常連さん
会議室デビュー日: 2006/05/18
投稿数: 37
投稿日時: 2006-06-20 09:55
皆さん、ご意見ありがとうございます。

どうやら書き方が悪かったかも知れません。申し訳ありません。

小数点があるかないかを判断してそれを何かの計算に使うとか
そういう事では全くなく、見た目の整形の問題なんです。

データグリッドに時間を表す列があり、例えば

5時間15分→5.25

といった感じに表すようになってます。
これがキッチリした時間だと

5時間→5

と普通に表示される為、見た目上の問題で
整数の時は".00"を付加して表示したく、その為に
小数点があるかないかを判定するにはどうすれば
よいかを皆さんにお聞きしました。
色々な意見ありがとうございます。

これからもよろしくお願いします。
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2006-06-20 10:16
Qさん、お早うございます。

引用:

整数の時は".00"を付加して表示したく、その為に


それが目的なら判定の必要は無いと、皆さん仰っていたわけです。

引用:

ぽぴ王子さんの書き込み (2006-06-19 17:29) より:
コード:
Console.Write(x.ToString("0.00"));





引用:

じゃんぬねっとさんの書き込み (2006-06-19 17:33) より:
たとえば、ToString メソッドのオーバーロード一覧を見てください。


Qoo
常連さん
会議室デビュー日: 2006/05/18
投稿数: 37
投稿日時: 2006-06-20 11:21
きくちゃんさん、お返事ありがとうございます。

皆さんが仰っていた判断の必要が無いという事ですが
以下のコードで自分で試してみてようやく意味が理解できました。

private void Button1_Click(object sender, System.EventArgs e)
{
   double x = 5.5;
   tx.Text = x.ToString(".00");
}

ToStringメソッドは今まで数値等を文字列化するぐらいしか使ったこと無く
文字列整形の使い方まで出来るとは知りませんでした。
これのお陰で判定文を消して一行にまとめられました。
皆さん、ありがとうございました。

スキルアップ/キャリアアップ(JOB@IT)