文章来源:https://ww2.mathworks.cn/help/matlab/ref/fseek.html?searchHighlight=fseek&s_tid=doc_srchtitle

fseek

移至文件中的指定位置

全页折叠
 

说明

示例

fseek(fileID, offset, origin) 在指定文件中设置文件位置指示符相对于 originoffset 字节数。

当操作成功时,status = fseek(___) 返回 0。否则,fseek 将返回 -1。可以使用上述任意输入参数组合。

 

示例

全部折叠

移动到文件中的新位置

打开下面的 badpoem.txt 文件,执行读取操作(使位置指针前进),然后使用 seek 移动到文件中的新位置。

使用 fopen 打开文件。然后,使用 ftell 查询当前位置。

fid = fopen('badpoem.txt');
ftell(fid)
ans = 0

读取前三行,并在每次读取后查询指针在文件中的位置。使用 fgetl 进行读取,在读取操作后使用 fseek 检查当前位置。

tline1 = fgetl(fid)  % read the first line 
tline1 =
'Oranges and lemons,'
ftell(fid)
ans = 20

读取第二行并检查当前位置。

tline2 = fgetl(fid)  % read the second line 
tline2 =
'Pineapples and tea.'
ftell(fid)
ans = 40

读取第三行并检查当前位置。

tline3 = fgetl(fid)  % read the third line 
tline3 =
'Orangutans and monkeys,'
ftell(fid)
ans = 64

要读取第 2 行,请将文件中的位置设置为指向第 2 行的开头。使用 fseek 设置位置,然后执行读取操作。

fseek(fid,20,'bof');
fgetl(fid)
ans =
'Pineapples and tea.'

关闭文件。

fclose(fid); 
 
 

输入参数

全部折叠

fileID - 文件标识符
整数

已打开文件的文件标识符,指定为整数。在使用 fseek 之前,必须使用 fopen 打开文件并获取其 fileID

数据类型: double

offset - 字节数
整数

要相对于 origin 移动的字节数,指定为整数。offset 的值可以为正数、负数或零。

数据类型: double

origin - 起始位置
整数 | 字符向量 | 字符串

文件中的起始位置,指定为字符向量、字符串标量或数值标量。

'bof'-1

文件的开头

'cof'0

文件中的当前位置

'eof'1

文件的结尾

数据类型: double | char | string

提示

  • 如果一个文件有 n 个字节的数据,则这 n 个字节位于从 0n-1 的位置。

备选方法

要移至文件的开头,请调用

frewind(fileID)

此调用等同于

fseek(fileID, 0, 'bof')

扩展功能

C/C++ 代码生成
使用 MATLAB Coder 生成 C 代码和 C++ 代码。

用法说明和限制:

  • 当 MATLAB 的行为与 C 编译器的行为不同时,生成的代码将与 C 编译器的行为相匹配。示例包括:

    • 跳过文件末尾查找。

    • 不在使用追加访问权限打开的文件末尾进行查找。

  • 偏移量作为有符号长数据类型传递给 C 运行时环境。因此,偏移值必须适合目标硬件上的长数据类型。

在 R2006a 之前推出

matlab中fseek 移至文件中的指定位置的更多相关文章

  1. java算法面试题:编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。

    package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...

  2. mybatis中的map.xml文件中sql语句需要分号吗?

    mybatis中的map.xml文件中sql语句需要分号吗? :你是说sql介绍的分号吗?不需要的

  3. SpringMVC 实现POI读取Excle文件中数据导入数据库(上传)、导出数据库中数据到Excle文件中(下载)

    读取Excale表返回一个集合: package com.shiliu.game.utils; import java.io.File; import java.io.FileInputStream; ...

  4. Spring MVC框架下在java代码中访问applicationContext.xml文件中配置的文件(可以用于读取配置文件内容)

    <bean id="propertyConfigurer" class="com.****.framework.core.SpringPropertiesUtil& ...

  5. jquery ajax中 php前台后台文件中编辑都是uft-8,返回数据还是乱码

    jquery ajax中 前台后台文件中编辑都是uft-8,返回数据还是乱码 解决如下: 在后台处理文件里面需要再加编辑 header("Content-Type:text/html;cha ...

  6. ASP.NET MVC 中单独的JS文件中获取Controller中设定的值

    1,在Controller中的Action 中将指定值写上.       //       // GET: /Home/       public ActionResult Index()       ...

  7. 解决python中write()函数向文件中写中文时出现乱码的问题

    今天看<python编程从入门到实践>的第10章文件.异常,在做练习的时候,向文件中写内容,但是写中文就不行,后来在百度上查了众多资料,解决方法如下: 解决:在open()函数中添加一个e ...

  8. NDK编程中如何在C文件中打印调试信息

      1,在Android.mk文件中加上 LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog LOCAL_PATH := $(call my-dir)include ...

  9. Android 中保存数据到文件中

    1.在安卓开发中,会遇到保存数据到手机中以及从手机中获取数据的情况 /** * 把数据存放到手机内存中 * * @param number * @param password * @return */ ...

随机推荐

  1. ES6--let,解构赋值,promise && ES7--async

    ES-->IE10.Google.火狐 ES6 let 声明的关键字 不能重复声明 块级作用域 <input type="button" value="1&q ...

  2. Pytest allure自定义特性场景功能

    @allure.feature @allure.story allure支持用户对测试用例进行功能模块的自定义,并展示在报告中 需要在测试用例代码中加上装饰器@allure.feature[加在测试类 ...

  3. c# 可获取系统环境

    c# 可获取系统环境, 启动进程执等 *.shell [MenuItem("Tools/DesignHelper/Clean and Pull")]     private sta ...

  4. viewPager2的Bug

    在使用数据绑定时,viewpager2的 android:layout_width 必需 match_parent,不然要么显示不正常,要么直接崩溃.

  5. POJ - 3037-Skiing(邻接表+Dijkstra)

    Bessie and the rest of Farmer John's cows are taking a trip this winter to go skiing. One day Bessie ...

  6. VMware中卸载安装Ubuntu系统 ——Ubuntu系统配置(一)

    由于之前配置给Ubuntu的磁盘空间不足,进行了扩展磁盘空间,结果Ubuntu无法开机了,试了很多种办法都没成功,也有些后悔没有记录下配置过程,于是决定卸载Ubuntu进行重新安装和配置. 一.VMw ...

  7. Activiti7 生成表结构

    首先创建一个Maven项目 整体的项目结构 activiti.cfg.xml配置文件 <?xml version="1.0" encoding="UTF-8&quo ...

  8. redis锁操作

    模拟多线程触发 package com.ws.controller; import io.swagger.annotations.Api; import io.swagger.annotations. ...

  9. JVM调优和深入了解性能优化

    JVM调优的本质: 并不是显著的提高系统性能,不是说你调了,性能就能提升几倍或者上十倍,JVM调优,主要调的是稳定.如果你的系统出现了频繁的垃圾回收,这个时候系统是不稳定的,所以需要我们来进行JVM调 ...

  10. Linux下安装Sublime Text 3 及使用快捷方式

    1.添加sublime text3的仓库 首先按下快捷键ctrl+alt+t打开终端: 在终端输入:sudo add-apt-repository ppa:webupd8team/sublime-te ...