- Scilab help
- Files : Input/Output functions
- Directory
- Paths - Filenames
- copyfile
- deletefile
- dispfiles
- fileinfo
- findfiles
- fprintf
- fprintfMat
- fscanf
- fscanfMat
- getmd5
- %io
- isfile
- listfiles
- listvarinfile
- maxfiles
- mclearerr
- mclose
- mdelete
- meof
- merror
- mfprintf
- mfscanf
- mget
- mgetl
- mgetstr
- mopen
- movefile
- mput
- mputl
- mputstr
- mseek
- mtell
- newest
- save_format
- scanf
- преобразование scanf
- sscanf
Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function
mgetstr
считывает символьную строку из файла
Последовательность вызова
str = mgetstr(n, [fd])
Аргументы
- n
неотрицательное целое число: количество символов, которое необходимо прочитать.
- fd
целое число: дескриптор файла, возвращаемый функцией mopen, в котором необходимо прочитать символы. Значение
-1
ставится для последнего открытого файла и оно является значением по умолчанию.- str
символьная строка, которую нужно прочитать.
Описание
Функция mgetstr
пытается прочитать
n
символов из файла. Если конец файла достигнут
прежде, чем будут прочитаны n
символов, то
mgetstr
возвращает лишь те значения, которые
удалось прочитать. Как следствие, когда курсор чтения уже в конце файла,
когда вызывается функция mgetstr
, то она возвращает
пустую строку, и при этом не важно какое значение указано для
n
.
Примеры
fn = SCI + '/ACKNOWLEDGEMENTS'; // абсолютный пут до некоторого файла details = fileinfo(fn); // получение деталей о файле len = details(1); // получение длины файла fd = mopen(fn, 'rt'); // открыть файл как текст в режиме чтения str1 = mgetstr(33, fd) // прочитать 33 символа из fd length(str1) // чтение 33 символов str2 = mgetstr(272, fd) // чтение следующих 272 символов из fd length(str2) // 272 прочитанных символа mseek(len - 5); // прыжок на 5-тый символ до конца файла str3 = mgetstr(10, fd) // попытка прочесть 10 символов: возвращаются только 5 символов, больше не доступно length(str3) // да, есть 5 символов: вы просто не видите символ перевода строки :) str4 = mgetstr(10, fd) // чтение 10 символов: возврат пустой строки length(str4) // пустая строка mclose(fd); // закрытие файла
Смотрите также
- mclose — закрывает открытые файлы
- meof — проверяет достигнут ли конец файла
- mfprintf — преобразует, форматирует и записывает данные в файл
- fprintfMat — записывает матрицу в файл
- mfscanf — считывает входные данные из потока, указанного указателем потока (интерфейс с C-функцией fscanf)
- fscanfMat — считывает матрицу из текстового файла
- mget — считывает байт или слово в заданном двоичном формате и преобразует в число удвоенной точности
- mopen — открывает файл в Scilab'е
- mprintf — converts, formats, and writes data to the main scilab window
- mput — записывает байт или слово в заданном двоичном формате
- mputstr — записывает символьную строку в файл
- mseek — устанавливает текущую позицию в двоичном файле
- mtell — управление двоичными файлами
- mdelete — удаляет файлы
- "Input/Output functions" section
Report an issue | ||
<< mgetl | Files : Input/Output functions | mopen >> |