字符串3个小数位

时间:2013-05-09 15:20:43

标签: vb.net string format

示例1

Dim myStr As String = "38"

我希望我的结果为38.000 ...


示例2

myStr = "6.4"

我希望我的结果为6.400


实现这一目标的最佳方法是什么?我想用三个小数位置格式化字符串变量。

4 个答案:

答案 0 :(得分:15)

使用FormatNumber

Dim myStr As String = "38"
MsgBox(FormatNumber(CDbl(myStr), 3))

Dim myStr2 As String = "6.4"
MsgBox(FormatNumber(CDbl(myStr2), 3))

答案 1 :(得分:2)

查看"Standard Numeric Format Strings"

float value = 6.4f;
Console.WriteLine(value.ToString("N3", CultureInfo.InvariantCulture));
// Displays 6.400

答案 2 :(得分:2)

所以,如果你有

Dim thirtyEight = "38"
Dim sixPointFour = "6.4"

然后,将这些解析为数字类型的最佳方式是Double.ParseInt32.Parse,您应该保持数据类型,直到您想要将其显示给用户。

然后,如果您想要format a string with 3 decimal places,请执行String.Format("{0:N3}", value)之类的内容。

所以,如果你想快速解决问题,

Dim yourString = String.Format("{0:N3}", Double.Parse("38"))

会做的。

答案 3 :(得分:1)

在伪代码中

decpoint = Value.IndexOf(".");
If decpoint < 0 
  return String.Concat(value,".000")
else
  return value.PadRight(3 - (value.length - decpoint),"0")

如果是字符串,请将其保留为字符串。如果它是一个数字,则将其作为一个。