ReadByte (указатель_на_файл/поток)
Параметры
указатель_на_файл/поток = переменная, определенная командой
OpenFile,
ReadFile или
OpenTCPStream (версия 1.52 и выше)
Описание
Как только вы открыли файл на диске (или поток) для чтения, используйте эту команду для считывания одного байта из файла/потока за раз. Заметьте, что байт – это целое число, которое может приминать значения в диапазоне от 0 до 255 и использует 8 бит для хранения. Поскольку символы сохраняются как байтовые значения, эта функция может быть использована для считывания из файла одного символа за раз.
Дополнительные замечания
Значение, сохраненное командой
WriteByte, является «младшим» байтом
integer-числа. Т.е. отрицательные числа и числа больше, чем 255 все равно будут иметь значения в пределах 0 и 255. Это может показаться вам странным, если вы не совсем понимаете принцип хранения 32-битных
integer-чисел, но это НЕ глюк.
Потоками можно пользоваться только в версии
Blitz Basic 1.52 или выше.
Пример
; Чтение и запись в файл, используя функции ReadByte и WriteByte
; Инициализировать несколько переменных для примера
Byte1% = 10; хранить 10
Byte2% = 100; хранить 100
Byte3% = 255; хранить 255 (максимальное значение, которое может хранить байт)
Byte4% = 256; попробуйте сохранить 256, вы получите 0 (256 – 256 = 0)
Byte5% = 257; попробуйте сохранить 257, вы получите 1 (257 - 256 = 1)
Byte6% = -1; попробуйте сохранить –1, вы получите 255 (256 – 1 = 255)
Byte7% = -2; попробуйте сохранить 256, вы получите 254 (256 – 2 = 254)
Byte8% = Asc("A"); хранить ASCII код символа “A” (65 )
;(английская и русская «А» имеют разные коды – прим. перев.)
; Открыть файл для записи
fileout = WriteFile("mydata.dat ")
; Записать информацию в файл
WriteByte( fileout, Byte1 )
WriteByte( fileout, Byte2 )
WriteByte( fileout, Byte3 )
WriteByte( fileout, Byte4 )
WriteByte( fileout, Byte5 )
WriteByte( fileout, Byte6 )
WriteByte( fileout, Byte7 )
WriteByte( fileout, Byte8 )
; Закрыть файл
CloseFile( fileout )
; Открыть файл для чтения
filein = ReadFile("mydata.dat")
Read1 = ReadByte( filein )
Read2 = ReadByte( filein )
Read3 = ReadByte( filein )
Read4 = ReadByte( filein )
Read5 = ReadByte( filein )
Read6 = ReadByte( filein )
Read7 = ReadByte( filein )
Read8 = ReadByte( filein )
; Закрыть файл после завершения чтения
CloseFile( filein )
Print "Записано - считано"
Write Byte1 + " - " : Print Read1
Write Byte2 + " - " : Print Read2
Write Byte3 + " - " : Print Read3
Write Byte4 + " - " : Print Read4
Write Byte5 + " - " : Print Read5
Write Byte6 + " - " : Print Read6
Write Byte7 + " - " : Print Read7
Write Byte8 + " - " : Print Chr$( Read8 )
WaitKey()