我有一个二进制文件,使用4个字符来形成具有“含义”的整数。例如,4字节
我更喜欢在我的Java代码中表示这些内容为
在C++中,我可以执行以下操作:
在Java中,我的问题不是读取4个字节并将它们放入某些数据类型中。我的问题是将某些数据类型与const char数组
我该如何在Java中将int或其他形式的数据类型与类似
“0005”
等于整数808464437。我更喜欢在我的Java代码中表示这些内容为
'0005'
而不是808464437。 我也不想设置像final int V0005 = 808464437
这样的常量。在C++中,我可以执行以下操作:
fileStream->read((byte*) &version, 4); //Get the next bytes and stuff them into the uint32 version
switch (version) {
case '0005':
//do something
case '0006':
//do something
case '0007':
//do something
}
在Java中,我的问题不是读取4个字节并将它们放入某些数据类型中。我的问题是将某些数据类型与const char数组
'0005'
进行比较。我该如何在Java中将int或其他形式的数据类型与类似
'0005'
的const字符数组进行比较?我需要尽可能高效地完成这项任务!
short convertBytesToBCD(byte[])
的函数。 - Joop Eggen0x30 << 24 + 0x30 << 16 + 0x30 << 8 + 0x35
的整数。 - crushstatic final int V0005 = 808464437
有什么不同。我将使用枚举,如public enum FileVersion { V0005(808464437) }
? - crush