MATLAB frewind()、ftell()和fseek()的用法(附带实例)
在 MATLAB 中,包含基于位置信息对文件进行操作控制的函数,用于实现文件内移动的功能。
frewind() 函数的调用格式及说明如下表所示:
【实例 1】移动文件位置指针示例。在 MATLAB 命令行窗口中输入如下命令:
ftell() 函数的调用格式及说明如下表所示:
【实例 2】查询文件中的位置指针。在 MATLAB 命令行窗口中输入如下命令:
fseek() 函数的调用格式及说明如下表所示:
【实例 3】将文件位置指针移到指定位置。在 MATLAB 命令行窗口中输入如下命令:
MATLAB frewind()函数
在 MATLAB 中,frewind() 函数用于将文件位置指示器移动到打开文件的开头。frewind() 函数的调用格式及说明如下表所示:
| 调用格式 | 说明 |
|---|---|
| frewind(fileID) | 将文件位置指针设置到文件的开头 |
【实例 1】移动文件位置指针示例。在 MATLAB 命令行窗口中输入如下命令:
>> close all % 关闭当前已打开的文件
>> clear % 清除工作区的变量
>> fid = fopen('stars.txt') % 打开文件
fid =
3
>> fgetl(fid) % 使用 fgetl 读取文件的第1行
ans =
'Ah! why, because the dazzling sun'
>> fgetl(fid) % 读取文件的第2行
ans =
'Restored our Earth to joy,'
>> fgetl(fid) % 读取文件的第3行
ans =
'Have you departed, every one,'
>> frewind(fid) % 将文件位置指针设置到文件的开头
>> fgetl(fid) % 读取文件
ans =
'Ah! why, because the dazzling sun' % 读取文件第1行
>> fclose(fid); % 关闭文件
MATLAB ftell()函数
在 MATLAB 中,ftell() 函数用于将文件位置指示器移动到打开文件中的当前位置。ftell() 函数的调用格式及说明如下表所示:
| 调用格式 | 说明 |
|---|---|
| Position=ftell (fileID) | 返回指定文件中位置指针的当前位置 |
【实例 2】查询文件中的位置指针。在 MATLAB 命令行窗口中输入如下命令:
>> close all % 关闭当前已打开的文件
>> clear % 清除工作区的变量
>> fid = fopen('stars.txt') % 打开文件
fid =
3
>> ftell(fid) % 查询当前位置
ans =
0
>> fgetl(fid) % 使用 fgetl 读取文件的第1行
ans =
'Ah! why, because the dazzling sun'
>> ftell(fid) % 返回位置指针的当前位置
ans =
35
>> fclose(fid); % 关闭文件
MATLAB fseek()函数
在 MATLAB 中,fseek() 函数用于将文件位置指示器移动到文件中的指定位置。fseek() 函数的调用格式及说明如下表所示:
| 调用格式 | 说明 |
|---|---|
| fseek(fileID, offset, origin) | 在指定文件中设置文件位置指示符相对于 origin 的 offset 字节数。Origin(起始位置)参数设置为 bof 或 -1:文件的开头;cof 或 0:文件中的当前位置;eof 或 1:文件的结尾 |
| status = fseek(…) | 显示操作状态。当操作成功时,返回 0;否则返回 -1 |
【实例 3】将文件位置指针移到指定位置。在 MATLAB 命令行窗口中输入如下命令:
>> close all % 关闭当前已打开的文件
>> clear % 清除工作区的变量
>> fid = fopen('stars.txt'); % 打开文件
>> ftell(fid) % 查询文件位置指针的当前位置
ans =
0
>> t=fgetl(fid) % 读取文件的第1行
t =
'Ah! why, because the dazzling sun'
>> ftell(fid) % 查询当前位置
ans =
35
>> fseek(fid,12,'bof'); % 将位置指针移到bof指定的文件开头,并移动12字节数
>> fgetl(fid) % 读取新位置的第1行
ans =
'ause the dazzling sun'
>> fclose(fid); % 关闭文件
ICP备案:
公安联网备案: