2012-09-11 229 views
1

最初数据位于SQLite数据库的BLOB字段,然后是 - >十六进制数据 - >十进制数据。如何将整数转换为经度和纬度

(ëÑ·,Êz¾5)->(14EBD1B7, CA7ABE35)->(350998860, 3397041663) 

最后,我得到了一组这样的:

longitude 

350998860 
350998914 
350998914 
350998914 
350999021 
350998967 
350998967 
350998967 
350998914 
350998967 
350999021 

Latitude 

3397041663 
3397041717 
3397041663 
3397041556 
3397041610 
3397041610 
3397041556 
3397041610 
3397041610 
3397041663 
3397041610 
3397041663 

我知道数据被带到接近的孟菲斯大学,Latitude:N 35° 7' 6.9956" Longitude:W 89° 56' 13.204"。但我还没有找到任何方法从这个数据集中获得相似的值。有任何想法吗?

回答

1

采取参考从this link我写了下面的函数,它是可以正常使用:

Private Function ConvertHexToLatLng(h As String) As Double 
    Dim intDec As Integer 
    intDec = Convert.ToInt32(h, 16) 
    Dim dblLatOrLng As Double 
    If intDec < Convert.ToInt32("7FFFFFFF", 16) Then 
     dblLatOrLng = intDec * 0.0000001 
    Else 
     dblLatOrLng = 0 - ((Convert.ToInt32("FFFFFFFF", 16) - intDec) * 0.0000001) 
    End If 
    Return dblLatOrLng 
End Function