货币格式从文本到vb.net加倍

时间:2012-08-03 03:26:00

标签: vb.net

我有一个带有价格列的访问数据库为文本类型我想将其转换为double以进行一些比较问题是该列具有如下所示的值:

5.22
2.5$
62.5
34.6$
45.3
65.9$

所以Convert.ToDouble可以正常使用不包含“$”符号的值,那么如何在将文本转换为double之前从文本中删除$符号?

基本上这个想法是

检查是否有“$”

从文字中删除“$”

隐蔽地加倍......

最好从小数点以外的数字中删除任何内容

2 个答案:

答案 0 :(得分:0)

请勿使用Double作为货币。使用Decimal

抱歉,我来自C#,但是怎么样:

string str = "34.6$";
if (str.EndsWith("$"))
    str = str.Substring(0, str.Length-1);

var value = Decimal.Parse(str);

粗暴转换:

Dim str As String = "34.6$"
If str.EndsWith("$") Then
    str = str.Substring(0, str.Length - 1)
End If

Dim value = [Decimal].Parse(str)

答案 1 :(得分:0)

您可以使用String.Replace。无需检查“$”。如果它在那里,它将被替换。

    Dim value1 As String = "12.7$"
    Dim value2 As String = value1.Replace("$", "")
    MessageBox.Show(value2)
相关问题