gpt4 book ai didi

java - 从包含 3 个 float 的传感器中解析字符串

转载 作者:行者123 更新时间:2023-12-01 12:37:57 26 4
gpt4 key购买 nike

我正在尝试解析来自温度传感器的信息。传感器发送一个字符串,格式如下:

Temp: 1   388  2   358  3   200?    
Temp: 1 388 2 200? 3 200?

(第一个字符串包含有效的 channel 2 样本且 channel 3 已断开连接,第二个字符串包含 channel 2 和 3 已断开连接)。

我需要解析那些“dat”,它是一个没有点的 float ,并且我不能使用 String.split() 因为如果传感器没有检测到任何东西它会添加一个“?”到“dat”的末尾。输出应该是:

Temp[0]= 38.8
Temp[1]= 35.8
Temp[2]= 20.0

我还需要解析那个“?”说明 channel 是否已断开。

最佳答案

我尝试使用split()来解决这个问题,没有发现你说的有什么问题。

public static void parseData(String data) {
String[] args = data.split("\\s+");
for (int i=2; i<7; i+=2) {
if (args[i].charAt(args[i].length() - 1) == '?') {
args[i] = args[i].substring(0, args[i].length() - 1);
}
double val = Double.parseDouble(args[i]) / 10;
System.out.println("Temp[" + (i-1)/2 + "]= " + val);
}
}

关于java - 从包含 3 个 float 的传感器中解析字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25399001/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com