文档

fgets

从文件中读取行,保留newline字符

句法

tline = fgets(fileid)
tline = fgets(fileid,nchar)

描述

例子

tline = fgets(fileid读取指定文件的下一行,包括newline字符。

  • 如果文件是非空的,则fgets返回林语作为角色向量。

  • 如果文件为空,仅包含文件终止标记,则fgets返回林语作为数字值-1

tline = fgets(fileid,,,,NCHAR返回NCHAR下一行的字符。

例子

全部收缩

从文件中读取一行,首先排除新线字符,然后包括它们。使用以下文件。

从文件中读取第一行badpoem.txt, 利用fopen打开文件。然后使用fgetl,不包括新线字符。

fid = fopen('badpoem.txt');line_ex = fgetl(fid)%阅读行不包括新线字符
line_ex ='oranges and Lemons'

要从文件中重新阅读相同的行,请首先将读取位置指示灯重置回文件的开头。

Frewind(FID);

使用fgets函数从文件中读取第一行badpoem.txt,读取包括newline字符的行。

line_in = fgets(fid)%读取行,包括newline字符
line_in ='橘子和柠檬,'

通过检查输出的长度来比较输出fgetlfgets功能。

长度(line_ex)
ans = 19
长度(line_in)
ANS = 20

fgetl返回以一行显示的输出,而fgets返回包含Newline字符的输出,因此将其显示为两行。

line_ex
line_ex ='oranges and Lemons'
line_in
line_in ='橘子和柠檬,'

关闭文件。

fclose(fid);

输入参数

全部收缩

打开文件的文件标识符,指定为整数。使用之前fgets要从文件中读取一行,您必须使用fopen打开文件并获得其fileid

数据类型:双倍的

从下一行读取的字符数,指定为整数。fgets最多返回NCHAR下一行的字符。如果字符的数量由NCHAR包括Newline字符或文件终止标记以外的字符,然后fgets除了新的行字符或文件终止标记以外的任何字符不会返回任何字符。

数据类型:双倍的

提示

  • 林语不包括Newline字符或文件终止标记后的任何字符。

  • fgets使用与文件关联的编码方案读取字符。要指定编码方案,请使用fopen

在R2006a之前引入

这个话题有帮助吗?