将字符串转换为十进制为字符串并返回十进制

时间:2013-02-25 21:22:53

标签: vb.net string type-conversion decimal

我想将字符串转换为小数,然后转换为字符串,然后再转换为小数。

我试过了:

Dim s As String = "0.7655"

CDec(sDec).ToString("0.00")  'results in: 7653,00
CDec(sDec).ToString 'results in: 7648
CDec(sDec).ToString("N") 'results in: 7.653,00

所以这些都不起作用!

没有简单的函数可以将精确的十进制再次转换为其字符串表示吗?对于这么简单的任务来说,似乎工作太多了!

最好不要格式化字符串,因为在这种情况下我似乎事先知道结果字符串应该有多少个字符。 将它转换为字符串后,我还想再将其转换回小数。

2 个答案:

答案 0 :(得分:7)

在您当前的文化中,小数点分隔符可能是逗号而不是点。使用不变文化将始终使用点:

Dim s As String = "0.7655"

Dim decValue As Decimal = Decimal.Parse(s, System.Globalization.CultureInfo.InvariantCulture)
Console.WriteLine(decValue.ToString())

答案 1 :(得分:0)

您应该能够使用Parse方法获得答案。

    Dim s As String = "0.7655"
    Dim c As Decimal = Nothing

    c = Decimal.Parse(s)

    Console.WriteLine(c)

然后,您可以使用ToString方法转换回字符串。