HttpURLConnection Java диапазон - PullRequest
0 голосов
/ 10 июня 2011

Я использую 'HttpURLConnection' в Java со свойством "Range" для загрузки сегмента файла, я устанавливаю диапазон 60000-560000, и я могу читать 500000 байтов, что составляет 560000-60000.Но когда диапазон равен 0-60000, я могу прочитать 60001 байт данных, что не равно 60000-0.

Почему?Кто-нибудь может дать мне какое-нибудь объяснение?

1 Ответ

0 голосов
/ 26 марта 2017

Это правильное поведение. Обе границы диапазона включены. От RFC 7233 :

Значение первого байта в спецификации байтового диапазона дает смещение байта первого байта в диапазоне. Значение last-byte-pos дает смещение байта последнего байта в диапазоне; то есть байт указанные позиции включительно. Смещения байтов начинаются с нуля.

Примеры значений спецификаторов байтовых диапазонов:

o Первые 500 байтов (смещение байтов 0-499 включительно):

   bytes=0-499

o Вторые 500 байтов (смещения байтов 500-999 включительно):

   bytes=500-999
...