修复经纬度读取bug

This commit is contained in:
copper 2025-09-12 15:22:16 +08:00
parent 64b0f0cd23
commit 6d8f181689

View File

@ -480,6 +480,7 @@ namespace sscom_sender
{ {
try try
{ {
// #BESTPOSA,COM1,14394,87.0,FINE,2383,354515.600,2509361,12,18;SOL_COMPUTED,SINGLE,30.52958183282,114.35069685918,242.5329,-14.1669,WGS84,3.7153,4.0026,6.4976,"0",0.000,51.000,14,8,8,0,5,02,10,40*2758be88
string[] parts = data.Split(','); string[] parts = data.Split(',');
// 查找WGS84标识的位置 // 查找WGS84标识的位置
// LogMessage($"GPS数据部分数量: {parts.Length}"); // LogMessage($"GPS数据部分数量: {parts.Length}");
@ -487,7 +488,7 @@ namespace sscom_sender
for (int i = 0; i < parts.Length; i++) for (int i = 0; i < parts.Length; i++)
{ {
// LogMessage($"GPS数据部分: {parts[i]}"); // LogMessage($"GPS数据部分: {parts[i]}");
if (parts[i].Contains("WGS84")) if (parts[i].Contains("SINGLE"))
{ {
wgs84Index = i; wgs84Index = i;
break; break;
@ -495,7 +496,7 @@ namespace sscom_sender
} }
// LogMessage($"WGS84索引: {wgs84Index}"); // LogMessage($"WGS84索引: {wgs84Index}");
// WGS84后面的两个字段是经纬度 // WGS84前面四个两个字段是经纬度
if (wgs84Index >= 0 && parts.Length > wgs84Index + 2) if (wgs84Index >= 0 && parts.Length > wgs84Index + 2)
{ {
double lat = double.Parse(parts[wgs84Index + 1]); double lat = double.Parse(parts[wgs84Index + 1]);
@ -637,8 +638,8 @@ namespace sscom_sender
if (mqttClient != null && mqttClient.IsConnected) if (mqttClient != null && mqttClient.IsConnected)
{ {
_ = mqttClient.Publish(topic, Encoding.UTF8.GetBytes(json)); var rec = mqttClient.Publish(topic, Encoding.UTF8.GetBytes(json));
LogMessage($"MQTT发送: {json}"); LogMessage($"MQTT发送成功: {json} {rec}");
} }
else else
{ {