Matlab txt内容替换函数 fgetl fseek

   2023-02-09 学习力0
核心提示:Data Import and Export  :Low-Level File I/Othe contents of the file:   16     5     9     4    2    11     7    14    3    10     6    15   13     8    12     1   55    55    55

Data Import and Export  :Low-Level File I/O

the contents of the file:

   16     5     9     4

    2    11     7    14

    3    10     6    15

   13     8    12     1

   55    55    55    55

Example — Overwriting an Existing Text File.  Replace the third line of the file changing.txt from the previous example with [33 33 33 33]:

将第三行换成33 33 33 33

replaceLine = 3;

myformat = '%5d %5d %5d %5d\n';

% Open the file with permission to read and update.

% Use fgetl, which reads a line at a time,

% to place the file position indicator at the third line.

fid = fopen('changing.txt','r+');

for k=1:(replaceLine-1);

    fgetl(fid);

end;

%将指针移至第三行起始处

% call fseek between read and write operations

fseek(fid, 0, 'cof');

% 在当前位置开始写入

% print the new values

fprintf(fid, myformat, [33 33 33 33]);

%将第三行替换

% close the file

fclose(fid);

 

To view the file, use the type function:

type changing.txt

This command returns the new contents of the file:

   16     5     9     4

    2    11     7    14

   33    33    33    33

   13     8    12     1

   55    55    55    55

 

>> help  fseek

 fseek Set file position indicator.

    STATUS = fseek(FID, OFFSET, ORIGIN) repositions the file position

    indicator in the file associated with the given FID.  fseek sets the

    position indicator to the byte with the specified OFFSET relative to

    ORIGIN.

 

    FID is an integer file identifier obtained from FOPEN.

 

    OFFSET values are interpreted as follows:

        >= 0    Move position indicator OFFSET bytes after ORIGIN.

        < 0    Move position indicator OFFSET bytes before ORIGIN.

 

    ORIGIN values are interpreted as follows:

        'bof' or -1   Beginning of file

        'cof' or  0   Current position in file

        'eof' or  1   End of file

 

    STATUS is 0 on success and -1 on failure.  If an error occurs, use

    FERROR to get more information.

 

>> help fgetl

 fgetl Read line from file, discard newline character.

    TLINE = fgetl(FID) returns the next line of a file associated with file

    identifier FID as a MATLAB string. The line terminator is NOT

    included. Use FGETS to get the next line with the line terminator

    INCLUDED. If just an end-of-file is encountered, -1 is returned. 

 

    If an error occurs while reading from the file, fgetl returns an empty

    string. Use FERROR to determine the nature of the error.

 

    MATLAB reads characters using the encoding scheme associated with the

    file. See FOPEN for more information.

 

    fgetl is intended for use with files that contain newline characters.

    Given a file with no newline characters, fgetl may take a long time to

    execute.

 

    Example

        fid=fopen('fgetl.m');

        while 1

            tline = fgetl(fid);

            if ~ischar(tline), break, end

            disp(tline)

        end

        fclose(fid);

 

>> help ischar

 ischar  True for character array (string).

    ischar(S) returns 1 if S is a character array and 0 otherwise.

 

源文档 <http://hi.baidu.com/curbzz/item/e3661599d4b3e48159146139>

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 如何在Abaqus的python中调用Matlab程序
    目录1. 确定版本信息2. 备份python3. 设置环境变量4. 安装程序5. 调试运行参考资料Abaqus2018操作系统Win10 64位Python版本2.7(路径C:\SIMULIA\CAE\2018\win_b64\tools\SMApy\python2.7)2. 备份python将上述的“python2.7”文件夹复制出来,避免因操作错误
    03-16
  • 如何将极坐标数据转换为笛卡尔坐标系并绘制[MATLAB]
    如何将极坐标数据转换为笛卡尔坐标系并绘制[MAT
    你想做的事考虑根据与原点的距离 $r$ 和 $xy$ 平面上的角度 $heta$ 绘制数据 $P(r, heta)$。例如,雷达获取的信号包含有关目标范围 $r$ 和方位角 $heta$ 的信息。就是下图。在本文中,$heta$ 是从 $x$ 轴测量的角度。显示示例考虑创建依赖于 $r, heta$ 的虚拟
    03-16
  • 【MATLAB与机械设计】一维优化进退法确定初始区间
    【MATLAB与机械设计】一维优化进退法确定初始区
    在讨论一维搜索时,首先保证搜索区间函数具有单峰性,也就是在区间[a,b]中函数是凸函数,对于求极小值问题,函数值具有高—低—高的特性,在区间[a,b]上有唯一的最小值。1,方法的建立2.进退法确定搜索区间的程序框图3,根据上述的程序框图,编写的MATLAB程序
    03-08
  • 用于微型四轮驱动的 6T 小齿轮原型和使用 MATLAB 的 FEM 结构分析
    用于微型四轮驱动的 6T 小齿轮原型和使用 MATLA
    介绍我使用迷你 4WD 套件使用 Raspberry Pi 制作机器人汽车。定制零件丰富且方便,因为它们在附近的商店很容易买到。但是,由于Mini 4WD的速度非常快,因此在低速时很难控制速度。因此,我使用 3D 打印机制作了自己的 6T 小齿轮,并尝试改变齿轮比。 成型小齿
    03-08
  • ROS与Matlab系列:一个简单的运动控制 基于matl
    转自:http://blog.exbot.net/archives/2594Matlab拥有强大的数据处理、可视化绘图能力以及众多成熟的算法函数,非常适合算法开发;在控制系统设计中,Simulink也是普遍使用的设计和仿真工具。而ROS系统,则是一种新的标准化机器人系统软件框架。通过ROS,你
    02-10
  • matlab 遍历结构体struc的成员
    MATLAB中专门用于对结构数组的操作的函数并不多,通过 help datatypes获取数据类型列表,可以看到其中的结构数据类型的有关的函数,主要如表4.3.1所示。表4.3.1 结构数组的操作函数函数名             功能描述 deal                 把输入处
    02-09
  • 02-09
  • schroeder reverb matlab实现
    schroeder reverb matlab实现
    原理参考:Natural sounding artificial reverberation combFilter.m:function output = combFilter(delay, gain, input)fs = 48000;delaySample = int32(delayTime * fs / 1000);B = [1 zeros(1, delaySample - 1)];A=[1 zeros(1, delaySample - 2) -gain];
    02-09
  • C/C++中调用matlab引擎计算 matlab转c
    原帖地址:http://blog.sina.com.cn/s/blog_6adcb3530101cvot.html一,在linux环境使用matlab引擎必须先进行一些必要的配置1,matlab引擎依赖/bin/csh启动,所以不管你使用何种shell,都必须安装csh。**2,matlab引擎依赖的动态库文件目录必须在系统当前的
    02-09
  • MATLAB 图像放大/缩小,双线性插值
    MATLAB 图像放大/缩小,双线性插值
    半年前写过matlab最邻近插值的图像缩放,没怎么考虑边界问题。更早之前用Opencv写过双线性插值图像放大,不过写的比较混乱。所以这里用matlab重新再清楚的写一遍。 1 close all; 2 clear all; 3 clc; 45 m=1.8;%放大或缩小的高度 6 n=2.3;%放大或缩小的宽度 7
    02-09
点击排行