Когда может, DataInputStream.skipBytes (n) не пропускают n байты?

Вы можете встроить браузер в GUI Swing / AWT с помощью API JDIC . Я не вижу упоминания OS X , поэтому он не может быть вам полезен.

8
задан Charles Menguy 26 April 2012 в 07:18
поделиться

3 ответа

1) Не могло бы быть так очень доступных данных для чтения (другой конец канала еще, возможно, не отправил так много данных), и класс с реализацией мог бы не блокироваться (т.е. это просто возвратит то, что это может, вместо того, чтобы ожидать достаточного количества данных для обрабатывания запроса).

Я не знаю, ведут ли какие-либо реализации на самом деле себя таким образом, однако, но интерфейс разработан для разрешения его.

Другая опция состоит просто в том, что файл закрывается отчасти посредством чтения.

2) Любой readFully () (который будет всегда ожидать достаточного количества входа или иначе сбоя) или называет skipBytes () в цикле. Я думаю, что первый, вероятно, лучше, если массив не действительно обширен.

5
ответ дан 5 December 2019 в 19:04
поделиться

Josh Bloch недавно предал гласности это. Это последовательно в этом, InputStream.read, как гарантируют, не считает столько байтов, сколько это могло. Однако это совершенно бессмысленно как метод API. InputStream должен, вероятно, также иметь readFully.

1
ответ дан 5 December 2019 в 19:04
поделиться

Оказывается, что readFully () добавляет больше производительности наверху, чем я был готов выносить.

В конце я пошел на компромисс: Я называю skipBytes () однажды, и если это возвращает меньше, чем правильное число байтов, я называю readFully () для остающихся байтов.

1
ответ дан 5 December 2019 в 19:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: