我会这样做:
long l = file.readInt() & 0xFFFFFFFFL;
位操作是必要的,因为upcast将会延长一个负号.
关于字节顺序据我所知,Java中的所有I / O都是以大端的方式完成的.当然,这并不重要(字节数组,UTF-8编码等不受字节顺序的影响),但DataInput的许多方法都是.如果你的号码存储在小端,你必须自己转换.我所知道的标准Java中唯一的功能是允许通过order()方法配置ByteBuffer,然后打开NIO的门,我没有很多经验.
原文链接:https://www.f2er.com/java/125278.html