加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 从字符串转换为字节时的NumberFormatException

发布时间:2020-05-25 01:27:06 所属栏目:Java 来源:互联网
导读:我遇到了一件奇怪的事.我有一个字符串形式的二进制数字,特别是“01001100”.但我通过执行以下代码获得上述异常. String s = 01001100;byte b = Byte.parseByte(s); 但为什么会这样呢?而在一个字节中我们可以存储最大数量.最多127和分钟高达-128. 并且上述数

我遇到了一件奇怪的事.我有一个字符串形式的二进制数字,特别是“01001100”.但我通过执行以下代码获得上述异常.

String s = "01001100";
byte b = Byte.parseByte(s);

但为什么会这样呢?而在一个字节中我们可以存储最大数量.最多127和分钟高达-128.
并且上述数字的十进制等值是76,完全在该范围内.

我得到的特殊例外是:

java.lang.NumberFormatException:值超出范围.值:01001100基数:10

有没有办法摆脱它.是的,我必须使用字节,因为我只是逐字节地提取存储在图像中的数据.
谢谢.

解决方法

密钥位于异常字符串的末尾:radix:10.您正在将十进制值1,001,100转换为一个字节,但它不适合.试试这个:
String s = "01001100";
byte b = Byte.parseByte(s,2);

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读