ReadString$ (указатель_на_файл/поток)
Параметры
указатель_на_файл/поток = переменная, определенная командой
OpenFile,
ReadFile или
OpenTCPStream (версия 1.52 и выше). Возвращаемое значение – текстовая строка.
Описание
Как только вы открыли файл на диске (или поток) для чтения, используйте эту команду для считывания строковой переменной из файла.
Каждая хранящаяся в файле строка представляет собой 4-байтовое (32-битное)
integer-число, за которым следуют символы, формирующие строку.
Integer-число содержит информацию о количестве символов в строке, т.е. ее длину. Заметьте, что символы «возврат каретки», «перевод строки» и Null НЕ используются для обозначения конца строки. Файл из строк не может быть прочитан, как текстовый файл, так как он содержит строковые переменные, а не текст. Нулевая строка, т.е. строка нулевой длины (“”) занимает 4 байта,
integer-число со значением 0, за которым не следуют никакие символы. Строки не ограничены 255 символами, как в некоторых языках программирования. Чтение за пределами конца файла не вызовет ошибку, но каждое считанное значение будет строкой нулевой длины.
Эта команда должна быть использована только при чтении из двоичного файла или потока. С текстовыми файлами необходимо использовать
ReadLine.
Потоками можно пользоваться только в версии
Blitz Basic 1.52 или выше.
См. также:
WriteString,
OpenTCPStream,
ReadFile,
ReadLine,
ReadByte,
ReadShort,
ReadInt,
ReadFloat,
ReadBytes,
ReadAvail.
Пример
; Чтение и запись в файл, используя функции ReadString$ и WriteString
; Инициализировать несколько переменных для примера
String1$ = "Короткая строка"
String2$ = "Более длинная строка"
String3$ = "Это строка 3,"
String4$ = "соединенная со строкой 4"
; Открыть файл для записи
fileout = WriteFile("mydata.dat")
; Записать информацию в файл
WriteString( fileout, String1 )
WriteString( fileout, String2 )
WriteString( fileout, String3 + String4)
WriteString( fileout, " Как видно, не обязательно использовать переменные." )
; Закрыть файл
CloseFile( fileout )
; Открыть файл для чтения
filein = ReadFile("mydata.dat")
Read1$ = ReadString$( filein )
Read2$ = ReadString$( filein )
Read3$ = ReadString$( filein )
Read4$ = ReadString$( filein )
; Закрыть файл после завершения чтения
CloseFile( filein )
Print "Строковые переменные, считанные из файла mydata.dat "
Print
Print Read1
Print Read2
Print Read3
Print Read4
WaitKey()