我有以下问题:我正在向串口发送一个数组,它看起来像这样
byte arr[] = new byte[]{0x18, 0x1B, 0x02, 0x05, 0xFF, 0x01, 0x10,
0x21,0x30, 0x00, 0x00, 0x6A, 0x28, 0x1B,0x03}
问题来了 - 我有 3 个带有 R 、 G 、 B 颜色的文本字段。我从它们那里获取值作为字符串。但我无法将它们转换为上述格式 0xHexValue 并将它们放入字节数组中。我尝试了很多方法,但没有任何成功。
编辑:我使用 txtField.getText() 从 GUI 的文本字段中获取值,之后在示例 R 200 , G 0 , B 0 转换为 HEX C8 00 00 但我无法将 HEX 插入我的字节数组,因为它仍然是 string 。当我尝试使用 Byte.parseByte(s) 将字符串转换为字节时,会出现一些负值....
EDIT 2 Byte.valueOf(myString) 在值 200 上获得异常
java.lang.NumberFormatException:值超出范围。值:“200” 基数:10
伙计们:我看到你的帖子,我建议关注这个:如何使这个字符串“C8”以正确的格式0xC8适合arr[],当然作为字节而不是字符串......