我必须用Java读取传统格式的二进制文件。
简而言之,该文件有一个由几个整数、字节和固定长度的字符数组组成的头部,后面是一个记录列表,该列表也由整数和字符组成。
在任何其他语言中,我都会创建struct
(C/C++)或record
(Pascal/Delphi),它们是报头和记录的逐字节表示。然后,我将sizeof(header)
字节读入头变量,并对记录执行相同的操作。
如下所示:(Delphi)
type
THeader = record
Version: Integer;
Type: Byte;
BeginOfData: Integer;
ID: array[0..15] of Char;
end;
...
procedure ReadData(S: TStream);
var
Header: THeader;
begin
S.ReadBuffer(Header, SizeOf(THeader));
...
end;
用Java做类似的事情最好的方法是什么?我是否必须自己读取每个值,或者是否有其他方法来执行这种“块读取”?
https://stackoverflow.com/questions/277944
复制相似问题