Как читать байты из потока: продолжение
Если метод read()
вызывается с аргументом, он указывает максимальное количество байтов для чтения.
Метод пытается прочитать желаемое количество байтов из файла, а длину возвращаемого объекта можно использовать для определения количества фактически прочитанных байтов.
Вы можете использовать метод так же, как здесь:
try:
binary_file = open('file.bin', 'rb')
data = bytearray(binary_file.read(5))
binary_file.close()
for b in data:
print(hex(b), end=' ')
except IOError as e:
print("I/O error occurred:", strerror(e.errno))
Примечание: первые пять байтов файла были прочитаны кодом - следующие пять все еще ожидают обработки.
Code
from os import strerrordata = bytearray(10)
for i in range(len(data)):
data[i] = 10 + i
try:
binary_file = open('file.bin', 'wb')
binary_file.write(data)
binary_file.close()
except IOError as e:
print("I/O error occurred:", strerror(e.errno))
# Your code that reads bytes from the stream should go here.
{{ dockerServerErrorMsg }}
×
{{ errorMsg }}
×
{{ successMsg }}
×