Облегченная реализация java.io.InputStream, поддерживающая mark() и reset()

StackOverflow https://stackoverflow.com/questions/552198

  •  23-08-2019
  •  | 
  •  

Вопрос

Хорошего дня,

В настоящее время мы используем ByteArrayInputStream для нашего InputStream с возможностью сброса.Моя проблема с ним заключается в том, что он потребляет много памяти (он загружает все байты, которые он представляет в памяти, в отличие от некоторых других реализаций InputStream).

Тогда мой вопрос заключается в том, существует ли какая-либо более легкая реализация InputStream, которая поддерживает mark() & read ()?

Я также попытался выполнить поиск в commons-io, но ничего не нашел.

Спасибо, Франц

Это было полезно?

Решение

Будет ли использование BufferedInputStream работать для вас?Не зная, откуда берутся исходные данные (например, почему у вас есть ByteArrayInputStream), для начала немного сложно ответить на ваш вопрос.

Другие советы

Чаще всего я использую PushbackInputStream при анализе данных, и мне приходится возвращаться назад и перечитывать данные.Вот объяснение:

http://tutorials.jenkov.com/java-io/pushbackinputstream.html

Существует также PushbackReader, если вместо этого вам понадобится поток на основе символов.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top