作者popcorny (毕业了..@@")
看板AndroidDev
标题Re: [问题] android单位转换问题
时间Fri Aug 9 08:28:04 2013
※ 引述《acespeed (xXx)》之铭言:
: 请问一下各位版友
: 最近在做收data的程式
: 而收到的data都是用byte存起来
: 可是如果我拿来用都会有单位转换的问题
: 如我宣告
: int a ;
: 去收收到的data
: a = dataa<<8 + datab;
: 这样收到的结果都是错的
: 而我处理64bits的时候问题更大
: 请问大家有推荐的书或网站在讲怎麽处理这个的吗
: 以前写c都直接转来转去都不会有问题
: 不太清楚这部分应该怎麽处理
: 谢谢
ByteBuffer buffer = ByteBuffer.wrap(data);
int a = buffer.getInt();
short b = buffer.getShort();
不过不确定你的data是big endian还是little endian
如果上面结果还是错的
可以试试
buffer.order(ByteOrder.LITTLE_ENDIAN);
再去读去你的data
另外如果你是读取的是一个stream
建议改用DataInputStream
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.137.88.149
1F:推 acespeed:好~我会试试看!谢谢你 08/09 10:25