Dim myStr As String = "38"
結果を38.000
にしたい...
myStr = "6.4"
結果を6.400
にしたい
これを達成するための最良の方法は何ですか? string変数を少なくとも3つの小数点でフォーマットします。
FormatNumber を使用:
Dim myStr As String = "38"
MsgBox(FormatNumber(CDbl(myStr), 3))
Dim myStr2 As String = "6.4"
MsgBox(FormatNumber(CDbl(myStr2), 3))
"Standard Numeric Format Strings" を見てください。
float value = 6.4f;
Console.WriteLine(value.ToString("N3", CultureInfo.InvariantCulture));
// Displays 6.400
だからあなたが持っているなら
_Dim thirtyEight = "38"
Dim sixPointFour = "6.4"
_
次に、それらを数値型に解析する最良の方法は、 _Double.Parse
_ または _Int32.Parse
_ です。ユーザーに表示します。
次に、 小数点以下3桁で文字列をフォーマット したい場合は、String.Format("{0:N3}", value)
のようにします。
したがって、問題をすばやくハックしたい場合は、
_Dim yourString = String.Format("{0:N3}", Double.Parse("38"))
_
するだろう。
疑似コード
decpoint = Value.IndexOf(".");
If decpoint < 0
return String.Concat(value,".000")
else
return value.PadRight(3 - (value.length - decpoint),"0")
文字列の場合は、文字列として保持します。数値の場合は、1として渡します。