fgets
读取文件中的行,并保留换行符
说明
示例
一次读取文件的一行
读取文件的一行内容,第一次读取时先排除换行符,第二次读取时再包含换行符。使用以下文件。
要读取文件 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);
输入参数
输出参量
tline
— 文件中的下一行
字符向量 | 数值标量
文件中的下一行,以字符向量或数值标量形式返回。
如果文件非空,则
fgets
以字符向量形式返回tline
。如果文件为空且仅包含文件末尾标记,则
fgets
以数值-1
的形式返回tline
。
ltout
— 行终止符
整数
行终止符,以整数形式返回。
从 0
到 65535
的整数对应于 Unicode® 字符。您可以使用 char
函数将整数转换为对应的 Unicode 表示形式。
提示
tline
不包含换行符或文件末尾标记之后的任何字符。fgets
使用与文件相关联的编码方案读取字符。要指定编码方案,请使用fopen
。
扩展功能
C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。
用法说明和限制:
如果
fgets
函数没有从文件中读取内容,则生成的代码会报告错误或返回空值,而不是返回 -1。如果函数
fgets
读取了空字节,则返回的值可能会被截断。
基于线程的环境
使用 MATLAB® backgroundPool
在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool
加快代码运行速度。
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
版本历史记录
在 R2006a 之前推出R2022b: 在基于线程的环境中使用函数
此函数支持基于线程的环境。
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)