原来是数字类型的值,以字节byte的形式转换为数字

Retank 2018-09-20 06:14:42
/*低8位*/
//将该字节转换成字16进制字符串形式
String k1Str = Integer.toHexString(Integer.valueOf((short)byteValue1)) + "";

System.out.println("k1Str = " + k1Str);

//如果传回来的是4个字节形式的字符串,8个长度的字符串,就截取最后两位16进制的字符,即1个字节
if(k1Str.length() == 8) {
k1Str = k1Str.substring(6, 8);
}

System.out.println("k1Str = " + k1Str);

//转换为Integer对象值,就是数值类型了
Integer k1Int = Integer.valueOf(k1Str,16);


System.out.println("k1Int = " + k1Int);
/*高8位*/
String k2Str = Integer.toHexString(Integer.valueOf((short)byteValue2)) + "";

System.out.println("k2Str = " + k2Str);

if(k2Str.length() == 8) {
k2Str = k2Str.substring(6, 8);
}

System.out.println("k2Str = " + k2Str);

//高8位左移8位,直接乘以256省事
Integer k2Int = Integer.valueOf(k2Str,16)*256;

System.out.println("k2Int = " + k2Int);

Integer k = k1Int + k2Int;

System.out.println("k : " + k);

问题出来了:
以上是我要获取数据库blob的2进制流中的2个字节内容,但是毕竟麻烦,有更简便的方式吗?
...全文
592 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧