一旦文件被打开,就可以获取其状态。作为一个例子feof
函数确定是否已到达文件的末尾。这在一次读取文件的小部分时非常有用。以下示例显示如何一次从文件中读取一行,直到到达末尾。
filename = "myfile.txt"; fid = fopen (filename, "r"); while (! feof (fid) ) text_line = fgetl (fid); endwhile fclose (fid);
请注意,在某些情况下,读取文件的整体内容然后进行处理比按行读取更有效。这有一个潜在的优点,即删除上面代码中的循环。
msg =
ferror (fid)
¶[msg, err] =
ferror (fid)
¶[…] =
ferror (fid, "clear")
¶查询文件描述符指定流的错误状态fid.
如果存在错误条件,则返回一个字符串msg描述威瑟罗。否则,返回一个空字符串.
第二个输入"clear"
是可选的。如果提供,流上的错误状态将被清除。
可选的第二个输出是错误状态的数字指示。err如果遇到错误条件,则为1,否则为0。
请注意ferror
指示是否已经发生错误,而不是下一个操作是否会导致错误情况。
()
¶打印已打开的文件的列表,以及这些文件是为了读取、写入还是同时打开。
例如
freport () -| number mode arch name -| ------ ---- ---- ---- -| 0 r ieee-le stdin -| 1 w ieee-le stdout -| 2 w ieee-le stderr -| 3 r ieee-le myfile
详见: fopen, fclose, is_valid_file_id.
版权所有 © 2024-2025 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2