我有一列TOTAL_DOLLARS
包含String
要转换为的值Decimal
。但是,这些值$
前面也有一个字符(因为它们是美元金额)。我想删除这个$
字符,虽然我找不到这样做的方法。
这是我正在尝试的:
For Each row As DataRow In myTable.Rows
Replace(row.Item("TOTAL_DOLLARS"), "$", "")
Next
任何帮助深表感谢。
假设您的 TOTAL_DOLLARS 列包含作为字符串的值,则应该执行以下操作:
For Each row As DataRow In myTable.Rows
Dim dollarsInRow As Decimal
dollarsInRow = Convert.ToDecimal(row.Item("TOTAL_DOLLARS").Replace("$", String.Empty))
Next
假设您想在“TOTAL_DOLLARS”列上保持数据完整性,只需添加所需类型的新列并循环填充它:
myTable.Columns.Add("Total", GetType(Decimal))
For Each row As DataRow In myTable.Rows
row("Total") = Convert.ToDecimal(row("TOTAL_DOLLARS").ToString.Replace("$", ""))
Next
或像这样(保留NULL):
myTable.Columns.Add("Total", GetType(Decimal))
For Each row As DataRow In myTable.Rows
If Not IsDBNull(row("TOTAL_DOLLARS")) Then
row("Total") = Convert.ToDecimal(row("TOTAL_DOLLARS").ToString.Replace("$", ""))
Else
row("Total") = System.DBNull.Value
End If
Next