文件中是89 9b 9a de,我用DataInputStream readInt出来后,为什么还是0x899b9ade?
难道不是应该是de9a9b89吗?
debug时其实stream中是0xde9a9b89.但是readInt出来就变回去了,谁能帮忙解释一下?DataInputstream好像也没有设置大尾小尾的api...
难道不是应该是de9a9b89吗?
debug时其实stream中是0xde9a9b89.但是readInt出来就变回去了,谁能帮忙解释一下?DataInputstream好像也没有设置大尾小尾的api...
应该不会吧,你的DataInputStream包装的是什么输入流
readInt只是简单地从输入流中取4字节拼成一个INT并没做特殊处理
返回BUF的顺序是跟文件一样的,所以觉得奇怪流里怎么会倒过来了
而DataInputStream读INT时
直接是
((第一个字节 << 24) + (第二个字节&0xFF << 16) + (第三个字节&0xFF << 8) + (第四个字节&0xFF << 0))
得到的INT与文件内容的是一致的