0
?string.Format("{0:D3}", 10/2)
{"Format specifier was invalid."}
    _HResult: -2146233033
    _message: "Format specifier was invalid."

3 桁の整数のような double を表す必要があります。「5.2」は「005」と表現し、「5.9」は「006」と表現するべきだと言いますが、「005」でも構いません。

フレームワークは Integer のような Double の表現をサポートしていませんか?

4

2 に答える 2

2

Math.Round整数に丸め (オプション)、フォーマットを使用するint前にキャストするために使用します。D3

string.Format("{0:D3}", (int)Math.Round(10/2));

にキャストするintと、浮動小数点引数に整数の書式設定オプションを指定したために発生する「無効な書式指定子」エラーが回避されます。

于 2012-10-12T10:07:15.347 に答える
0

使用する代替ソリューションを見つけました

?string.Format("{0:000}", 5.9)代わりは。

「D」または「d」指定子は「サポート対象: 整数型のみ」であるため使用できません。(標準数値書式文字列 - MSDN )

于 2012-10-12T10:20:50.843 に答える