我是java初学者,我正在从串口读取数据,并将数据存储在字符串数组中,数据长度为24字节。
我得到的输出数据:12120814330006050.0
数据在字符串中还包含十六进制字符,我想读取字符串的第一个字符。我已经做了:
String str=dispArray[i].substring(1,2);
int i= Integer.parseInt(str,16);
System.out.println("Decimal:="+ i);
但是我得到 NumberFormatException.plz 帮助我读取十六进制字符。
谢谢回复
最佳答案
可以从字符串中获取单个字符
str.getChar(0);
当您知道字符串的每个字符中都包含十六进制值时,您不必转换每个字符。您可以输入完整的字符串并获取十六进制字符串的十进制值。否则,您只计算 1 个十六进制值,并且必须乘以字符位置的索引号。
要将其解析为您可以调用的十六进制值
Integer.parseInt(str,16);
关于java - java中将十六进制字符串转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/362278/