2012-03-16 95 views
0

我有一个包含不同位长度(4字节,2字节)的整数值的文件,但我不知道这些值在文件中的布局(即一个值是一个4字节还是2个字节的整数)。例如,一个文件可能有两个4字节整数,后跟5个2字节整数,另一个文件可能先有3个2字节整数,然后是4个4字节整数。有没有办法读取这些值?如何从文件中使用java查找整数的类型

我想编写代码,它接受这样一个文件并读取一个值,而不考虑它的字节大小。现在我正在使用DataInputStream,并且通过了解值的布局,使用一些查看器提前读取值。但以这种方式,一切都是硬编码的,我的代码不是通用的。

+6

你会如何区分两个2字节整数和一个4字节整数? – Jeffrey 2012-03-16 23:48:01

+4

这完全不可能。字节是字节。 – SLaks 2012-03-16 23:48:42

+0

我会开始寻找文件格式的原始作者并询问他/她。 – BalusC 2012-03-16 23:49:15

回答

0

您将不得不使用查看器数据“解析”或“读取”或“做某些事情”,并在读取期间使用重构的查看器信息作为文件格式定义信息。

相关问题