Я читаю двоичные данные из файла фрагментом в ByteBuffer, а затем обрабатываю данные в ByteBuffer. Мне нравится использовать ByteBuffer, потому что я могу использовать метод order() для правильного считывания коротких и целых чисел.
Позже мне придется записать в файл новые/измененные данные. Идея заключалась в том, чтобы снова использовать ByteBuffer и использовать его методы put. Однако я не знаю, как легко узнать требуемый размер заранее, я мог бы его вычислить, но это означало бы двойной анализ данных. В качестве альтернативы я мог бы использовать ByteArrayOutputStream, но тогда мне нужно написать методы для записи целых чисел BigEndian/LittleEndian ectera.
Что посоветуете, есть ли третий вариант?
Integer.reverseBytes
, чтобы справиться с этим. - person Louis Wasserman   schedule 23.09.2015