【发布时间】:2012-05-23 02:13:38
【问题描述】:
我有以下值48.81,它是数据库中的一个字符串,我需要将其转换为十进制,我正在使用:
Dim Seconds As Decimal = Convert.ToDecimal((Coordinate.Substring(4, 5)), CultureInfo.InvariantCulture)
我收到了4881D,我需要48,81
有什么想法吗?我以为CultureInfo.InvariantCulture 会帮我解决这个问题
编辑
坐标值为675900.244。
我像这样“拆分”它:
Dim Degress As Integer = Coordinate.Substring(0, 2),
Dim Minutes As Integer = Coordinate.Substring(2, 2),
Dim Seconds As Decimal = Convert.ToDecimal((Coordinate.Substring(4, 5)), CultureInfo.InvariantCulture),
Dim Position As Enumerations.EnumCoordinatesPosition = Coordinate.Substring(9, 1)
编辑
编辑
编辑 这是数据库中坐标的值
【问题讨论】:
-
数据库中的字符串是
"48.81",实际上不是"48,81"? -
为什么数据库中的数值是字符串?大多数 dbms 可以存储的不仅仅是字符串 ;-)
-
请提供一个简短但完整的程序来说明问题。
-
你没有给我们
Coordinate的值。 -
你能以同样的方式显示
databaseCoordinate变量的值吗?
标签: c# vb.net type-conversion cultureinfo