Function LatToDecimal(latIn As String) As String
Dim SplitA() As String
SplitA() = Split(latIn, "°") 'A(0) is DEG.
Dim SplitB() As String
SplitB() = Split(SplitA(1), "'") 'B(0) is MIN.
Dim SplitC() As String
SplitC() = Split(SplitB(1), """") 'C(0) is SEC. C(1) is N/S.
Dim deg As Double
Dim min As Double 'Not yet used.
Dim sec As Double 'Not yet used.
If (Not Double.TryParse(SplitA(0), deg)) Then
deg = 0
End If
End Function
构建上述函数时,我在If
语句中遇到编译错误(Expected:Expression)。 latIn
将始终作为有效的DMS纬度值传递,并且我已确认MsgBox(SplitA(0))
已被删除,但SplitA(0)
确实存在。
好像Double.TryParse()
没有成功返回布尔值,除非我误解了。可能导致这种情况发生的原因是什么?
答案 0 :(得分:1)
如果内存为我提供正确Double.TryParse()
适用于VB.net。我认为您正在寻找的是Cdbl将其转换为double。您可以在此处找到有关此内容的更多信息:http://www.techonthenet.com/access/functions/datatype/cdbl.php
它是您需要的几乎所有内置功能的绝佳资源。