我正在读取这样的二进制文件:
InputStream in = new FileInputStream( file );
byte[] buffer = new byte[1024];
while( ( in.read(buffer ) > -1 ) {
int a = // ???
}
我想要读取最多4个字节并从中创建一个int值,但是我不知道该怎么做。
我有点像我必须一次抓取4个字节,然后执行一个“字节”操作(例如>> << >>&FF之类的东西)来创建新的int
这是什么成语?
编辑
哎呀,事实证明这要复杂一些(解释一下)
我想做的是,读取一个文件(可能是ascii,二进制,这无关紧要)并提取它可能具有的整数。
例如,假设二进制内容(以2为底):
00000000 00000000 00000000 00000001
00000000 00000000 00000000 00000010
整数表示应该是1
,2
对吧?:-/前32位为1,其余32位为2。
11111111 11111111 11111111 11111111
将为-1
和
01111111 11111111 11111111 11111111
将会 Integer.MAX_VALUE ( 2147483647 )