java如何将十六进制0xFF5100A5转换为无符号int值,貌似java不支持无符号数据?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何将十六进制0xFF5100A5转换为无符号int值,貌似java不支持无符号数据?相关的知识,希望对你有一定的参考价值。
谢谢大家的解答
我之前是想用java把0xFF5100A5写到文件里面,结果发现写完后用16进制打开发现不对。
后来我把它换成用字节写,就能得到正确的了。如下:希望哪位能给个详细的解释
byte h1 = (byte) 0xA5;
byte h2 = (byte) 0x00;
byte h3 = (byte) 0x51;
byte h4 = (byte) 0xFF;
之前我是用写字符的方式char []c=new char[]0xA5,0x00,0x51,0xFF;
Integer i = Integer.parseInt(a.toLowerCase(),16);
System.out.println(i);
去掉前面的0x,
貌似你的值太大,在我的32位机器上没法转换。 参考技术B 你知道无符号int跟int的差别吗?用位运算转一下不就行了
以上是关于java如何将十六进制0xFF5100A5转换为无符号int值,貌似java不支持无符号数据?的主要内容,如果未能解决你的问题,请参考以下文章