Я пытаюсь выяснить, как некоторые приложения Comi c Reader, даже используя ту же библиотеку, могут читать следующий файл с помощью Junrar, а я не могу.
https://mega.nz/?fbclid=IwAR2QwY9Fqunc74G7FJLAF_1i54MvMRl9v3PIkJYfV0YbKrSpI4UzHU6WEM4# ! XW5AxKbI! J9y9jsWt7Z8HeTxK9_O5c2JFHrBo1WLT8E3FSuT5VS8
Возможно, файл поврежден, но некоторые Android приложения могут прочитать этот файл. Почему?
Я вижу отладку, когда нужно вычислить headerType, присваивает значение 3 (байт), но заголовки с этим значением отсутствуют.
public BaseBlock(byte[] baseBlockHeader) {
int pos = 0;
this.headCRC = Raw.readShortLittleEndian(baseBlockHeader, pos);
pos += 2;
this.headerType |= baseBlockHeader[pos] & 0xff;
pos++;
this.flags = Raw.readShortLittleEndian(baseBlockHeader, pos);
pos += 2;
this.headerSize = Raw.readShortLittleEndian(baseBlockHeader, pos);
}
Значение headerType должно совпадать с одним из следующих значений:
MainHeader((byte) 0x73),
MarkHeader((byte) 0x72),
FileHeader((byte) 0x74),
CommHeader((byte) 0x75),
AvHeader((byte) 0x76),
SubHeader((byte) 0x77),
ProtectHeader((byte) 0x78),
SignHeader((byte) 0x79),
NewSubHeader((byte) 0x7a),
EndArcHeader((byte) 0x7b);