14.2.3 面向行的输入

要从文件中读取,必须先用 fopen 打开文件进行读取。然后可以使用 fgetl 从文件中读取一行,如下代码所示:

fid = fopen ("free.txt");
txt = fgetl (fid)
     -| Free Software is needed for Free Science
fclose (fid);

当然,这是假设文件 free.txt 存在并包含行 Free Software is needed for Free Science

 
str = fgetl (fid)
str = fgetl (fid, len)

从文件中读取字符,在遇到换行符、EOF 或读取了 len 个字符后停止。

读取的字符(不包括可能的尾随换行符)将作为字符串返回。

如果省略 lenfgetl 会一直读取到下一个换行符。

如果没有更多字符可读取,fgetl 返回 −1。

要读取一行并返回终止换行符,请参阅 fgets

另请参阅: fgets, fscanf, fread, fopen.

 
str = fgets (fid)
str = fgets (fid, len)

从文件中读取字符,在遇到换行符、EOF 或读取了 len 个字符后停止。

读取的字符(包括可能的尾随换行符)将作为字符串返回。

如果省略 lenfgets 会一直读取到下一个换行符。

如果没有更多字符可读取,fgets 返回 −1。

要读取一行并丢弃终止换行符,请参阅 fgetl

另请参阅: fputs, fgetl, fscanf, fread, fopen.

 
nlines = fskipl (fid)
nlines = fskipl (fid, count)
nlines = fskipl (fid, Inf)

从文件描述符 fid 指定的文件中读取并跳过 count 行。

fskipl 丢弃字符,直到恰好遇到 count 次行尾,或者遇到文件结束标记。

如果省略 count,则默认为 1。count 也可以是 Inf,在这种情况下会跳过行直到文件结束。此形式适用于计算文件中的行数。

返回跳过的行数(遇到的行尾序列次数)。

另请参阅: fgetl, fgets, fscanf, fopen.


版权所有 © 2024-2026 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2