Может ли кто-нибудь сказать мне, как получить текущую позицию индекса при чтении двоичного файла из DataInputStream
? Я видел метод mark()
, но один имеет тип Boolean
, а другой - void
. Мне нужно прочитать индексы в разных местах, чтобы использовать их снова.
Аналогичные вопросы задавали раньше. См. Например этот вопрос.
Я не знаю лучшего ответа, чем это:
Однако простым решением было бы запустить собственный "CountingInputStream", который расширяет InputStream и подсчитывает количество прочитанных байтов. Вам просто нужно было бы переопределить три метода чтения.
Можно также реализовать его как FilterInputStream напрямую.