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,
     '

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

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