2009-05-29 9 views
1

テキストを6桁に制限する方法。 2つの数字?テキストを######にフォーマットする方法。##

(###### ##)

事前に感謝の

+0

任意の丸め – Gold

+0

のないあなたは、その形式にユーザーの入力を制限する意味でください。このwinformsまたはASP.netです –

+0

これは、ユーザーコントロールの入力マスクまたは何かについてですか? –

答えて

6

あなたはString.Format法またはToString方法のいずれかを使用することができます:あなたの場合は

double value = 123.456; 
string formatted1 = String.Format(CultureInfo.InvariantCulture, "{0:######.##}", value); 
string formatted2 = value.ToString("######.##", CultureInfo.InvariantCulture); 

を書式設定文字列に#を使用すると、そこに有効数字がない場合は空白で埋められます。たとえば、"######.##"を使用してフォーマットされた123.456は、" 123.46"になります。

書式設定文字列に0を使用すると、そこに有効数字がないことがゼロで埋められます。たとえばは"000000.00"を使用してフォーマットされ、"000123.46"になります。

#0を組み合わせて別の結果を得ることができます。たとえば、小数点記号の前にスペースを入れてもかまいませんが、常に少なくとも1つの数字:"#####0.00"が必要です。

小数点記号を指定するには、ピリオド文字を使用します。これはいくつかの文化設定の期間であり、他のもののためのカンマです。期間は書式文字列で常に使用しますが、出力はカルチャの設定によって異なります。出力に常にピリオドが必要な場合はCultureInfo.InvariantCultureカルチャを使用できます。

あなたは数が四捨五入したくない場合は、あなたがそれをフォーマットする前に、それを切り捨てることがあります。

double value = 123.456; 
value = Math.Truncate(value * 100.0)/100.0; 
8
// without leading zeros 
string formatted = String.Format("{0:######.##}", value); 

// with leading zeros 
string formatted = String.Format("{0:000000.00}", value); 
+0

簡潔かつ簡潔な –

関連する問題