java图片读取的字节数组中超过127为负数,该如何处理
java图片读取的字节数组中超过127为负数因为做一个东西,需要把图片的字节数组传送到C#写的服务端,问题也就
java图片读取的字节数组中超过127为负数
因为做一个东西,需要把图片的字节数组传送到C#写的服务端,问题也就来了,java这边是如果字节数组中超过127的数都会以负数的形式显示,因为我们知道java读取的方式只支持字节数组,而byte是8位,所以不能超过127,如果超过就会溢出,以负数的形式显示,如果避免这样一个问题,读取的字节数组全部不会出现负数
[解决办法]
你读的是字节,如1111 0011这个字节,你要管他负数还是正数?
只要传到c#那边,它取到的也是1111 0011,就表示没有传错,正负数有关系么?
[解决办法]
传过去在c#那边不就变成正的了嘛
[解决办法]我也纳闷,为什么不会?
难道中间有隐式的转型?
byte(java)->int->byte(c#)
如果是byte到byte的话,确实不用管正还是负
楼主是怎么传的?又是怎么取的?
[解决办法]b & 0xff;
这样就可以了。
[解决办法]这样操作的结果是一个int,自然就变成了正值
[解决办法]