MATLAB fopen 打开文件并返回文件标识符 fid;fclose 关闭该标识符。读写文本或二进制时须成对使用:先打开,再用 fprintf、fscanf、fgetl 等操作,最后关闭。
语法
fid = fopen(filename, permission)
status = fclose(fid)
fclose('all')输入参数
| 参数 | 说明 |
|---|---|
filename | 文件名或路径,字符串 |
permission | 打开模式,如 'r' 读、'w' 写(覆盖)、'a' 追加 |
fid | fopen 返回的正整数标识符 |
输出
fopen 成功时返回大于 2 的 fid(0、1、2 保留给标准输入输出)。失败返回 -1。fclose 成功返回 0。
示例
fid = fopen('result.txt', 'w');
if fid == -1
error('无法打开文件')
end
fprintf(fid, '第一行:%d\n', 42);
fprintf(fid, '第二行:%.2f\n', 3.14);
fclose(fid);逐行读取:
fid = fopen('result.txt', 'r');
while ~feof(fid)
line = fgetl(fid);
disp(line)
end
fclose(fid);注意事项
- 写完必须
fclose,否则内容可能仍留在缓冲区,文件也被占用。 - 打开失败时 fid 为 -1,不可直接拿去 fprintf。
'w'会清空已有文件;追加用'a'。- 文件位于当前工作目录或给出的路径中;目录不可写时 fopen 失败。