我读取的二进制文件是这样的:
InputStream in = new FileInputStream( file );
byte[] buffer = new byte[1024];
while( ( in.read(buffer ) > -1 ) {
int a = // ???
}
我想做的是读取4个字节并从中创建一个 int 值,但是我不知道怎么做。
我觉得我必须一次抓取4个字节,然后执行一个“ byte”操作(比如 > > < < > & FF 之类的)来创建新的 int
这是什么成语?
剪辑
哎呀,这原来是有点更复杂(解释)
我试图做的是,读取一个文件(可能是 ascii,二进制,这并不重要) ,并提取它可能拥有的整数。
例如,假设二进制内容(在基数2中) :
00000000 00000000 00000000 00000001
00000000 00000000 00000000 00000010
整数表示应该是 1
,2
对吗?:-/1表示前32位,2表示其余32位。
11111111 11111111 11111111 11111111
应该是 -1
还有
01111111 11111111 11111111 11111111
就是 Integer.MAX_VALUE ( 2147483647 )