【问题标题】:C#: convert GPS data from string to doubleC#:将 GPS 数据从字符串转换为双精度
【发布时间】:2019-07-30 08:41:24
【问题描述】:

我正在做一个读取图像元数据的项目。如何将字符串中的 GPS 数据转换为 Latitude: 34 deg 30' 28.71" N 到浮点数中的十进制度数或 C# 中的双精度数?到运行过程

【问题讨论】:

  • 你能告诉我们你收到的字符串到底是什么吗?也许你将不得不做一个适合你的转换器。干杯
  • 请查看this,看看您是否真的要这样做。
  • 您是在问如何解析和标记字符串?
  • 例如有字符串 =(" 34 deg 30'40" ") 我如何使用任何函数转换为像 lat= 34,56 这样的值

标签: c# string converters degrees


【解决方案1】:

从字符串中提取值后,您需要使用这个简单的公式。

Dim strGPS As String = "Latitude: 34 deg 30' 28.71"" N"

Dim degrees As Double = CDbl(strGPS.Split(Space(1))(1)) '34
Dim minutes As Double = CDbl(strGPS.Split(Space(1))(3).Replace("'", "")) '30
Dim seconds As Double = CDbl(strGPS.Split(Space(1))(4).Replace("""", "")) '28.71

MsgBox(degrees + (minutes / 60) + (seconds / 3600))

【讨论】:

  • 如何从字符串中提取这个值?
  • 在 VB.NET 中添加了从字符串中提取值的简单代码;如果您需要/想要,您可以找到更好的方法。
猜你喜欢
  • 2013-10-10
  • 2015-04-10
  • 1970-01-01
  • 2014-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-11
相关资源
最近更新 更多