fgets

Прочитайте строку из файла, сохранив символы новой строки

Синтаксис

tline = fgets(fileID)
tline = fgets(fileID,nchar)
[tline,ltout] = fgets(___)

Описание

пример

tline = fgets(fileID) читает следующую строку заданного файла, включая символы новой строки.

tline = fgets(fileID,nchar) возвращается до символов nchar следующей строки.

[tline,ltout] = fgets(___) также возвращает терминаторы строки строки, если таковые имеются, в ltout.

Примеры

свернуть все

Считайте одну строку из файла, сначала, исключая символы новой строки, и затем включая их. Используйте следующий файл.

Чтобы прочитать первую строку из файла badpoem.txt, используйте fopen, чтобы открыть файл. Затем прочитайте первую строку с помощью fgetl, который исключает символ новой строки.

fid = fopen('badpoem.txt');
line_ex = fgetl(fid)  % read line excluding newline character
line_ex = 
'Oranges and lemons,'

Чтобы перечитать ту же строку из файла, сначала сбросьте индикатор положения чтения назад к началу файла.

frewind(fid);

Используйте функцию fgets, чтобы прочитать первую строку из файла badpoem.txt, который читает строку включая символ новой строки.

line_in = fgets(fid) % read line including newline character
line_in = 
    'Oranges and lemons,
     '

Сравните вывод путем исследования длин строк, возвращенных функциями fgets и fgetl.

length(line_ex)
ans = 19
length(line_in)
ans = 20

fgetl возвращает выходной параметр, который отображается в одной строке, в то время как fgets возвращает выходной параметр, который включает символ новой строки и, поэтому, отображает его в двух строках.

line_ex
line_ex = 
'Oranges and lemons,'
line_in 
line_in = 
    'Oranges and lemons,
     '

Закройте файл.

fclose(fid);

Входные параметры

свернуть все

Идентификатор файла открытого файла, заданного как целое число. Перед использованием fgets, чтобы прочитать строку из файла, необходимо использовать fopen, чтобы открыть файл и получить его fileID.

Типы данных: double

Количество символов, чтобы читать из следующей строки, заданной как целое число. fgets возвращается в большинстве символов nchar следующей строки. Если количество символов, заданных nchar, включает символы вне символа новой строки или маркера конца файла, то fgets не возвращает символов вне символа новой строки или маркера конца файла.

Типы данных: double

Выходные аргументы

свернуть все

Следующая строка в файле, возвращенном как вектор символов или числовой скаляр.

  • Если файл непуст, то fgets возвращает tline как вектор символов.

  • Если файл пуст и содержит только маркер конца файла, то fgets возвращает tline как числовое значение -1.

Терминаторы строки строки, возвращенные как целое число.

Целые числа от 0 до 65535 соответствуют Unicode®characters. Можно преобразовать целые числа в их соответствующие представления Unicode с помощью функции char.

Советы

  • tline не включает символов после символов новой строки или маркера конца файла.

  • fgets читает символы с помощью схемы кодирования, сопоставленной с файлом. Чтобы задать схему кодирования, используйте fopen.

Представлено до R2006a