1

我正在用 android 编写一个小程序,其中我有一个字符串变量中的字节值列表。像这样的东西:

String src = "255216173005050";

现在,我需要做的是从源字符串中提取字节值并将它们存储在字节变量中。(在上面的源字符串中,我将存储 5 个字节)

为此,我可以成功读取源字符串并将字节值分隔 3 个字符。(255、216、173、005、050)

问题是我未能将这些字符串转换为它们的字节值。

这是我已经做过的:

String str = "255";
byte b = (byte) Integer.parseInt(str);

通过运行这个, b 将是 -60 !有请帮帮我!

4

3 回答 3

0

这应该有效。然后只需访问字节数组的各种索引来获取各个部分。如果您的文本是异常字符集 - 然后将字符集传递给 getBytes() 方法。

byte[] bytes = src.getBytes();
于 2013-06-24T14:12:53.247 回答
0

parseInt当你想要一个byte;时不要使用 而是尝试Byte.parseByte。另请注意,bytes 的范围为 -128 到 127(含)。

于 2013-06-24T14:14:22.343 回答
0

当你写

byte b = (byte) Integer.parseInt(str);

你会得到一个有符号的字节。如果您查看使用类似的东西丢弃的 int

int i = Integer.parseInt(str);
System.out.println(i);
byte b = (byte) i;

您可能会看到i包含您想要的值。

于 2013-06-24T14:18:19.073 回答