我有远程数据,我必须显示两项的总成本。 这里是我创建解决如何做转换来添加两个项目的样品:如何将货币转换为Decimal vb.net?
Dim test1 As String = "ZAR897.83"
Dim test2 As String = "ZAR900.83"
Dim t1 As Double = Val(test1)
Dim t2 As Double = Val(test2)
Dim TotalPrice As Decimal = 0.00
TotalPrice += CDec(t1)
TotalPrice += CDec(t2)
在上面的代码T1结果值是0.0,这是T2相同。
任何帮助添加这些值将不胜感激。
编辑:这个问题已经被问,是没有答案在这里:Convert currency to decimal in VB.NET
编辑:我没有表现出各种不同的铸件我试过,因为所有我试过铸件给编译错误(我假设毫无意义,因为它们在某种意义上更不正确)。之所以我得到错误,无论我如何尝试投出数字,都是由于我的visual studio期望逗号而不是十进制值的时间段,这是由于Windows中的区域设置不正确。
尝试'Decimal.Parse(T1,NumberStyles.Currency)'。 –
@VisualVincent“重载解析失败,因为没有可访问的'Parse'可以用这些参数调用:”它从那里继续添加额外的文本。 – Nightwolf
如果“ZAR”应该是南非兰特,那么不会,你不会从Val()或Decimal.Parse()中获得。 .NET将只接受“897.83R”。您需要先从字符串中删除ZAR。 –