matlab文件操作fopen,fseek,fread,fclose

本文详细介绍了MATLAB中fread函数的多种用法,包括如何指定输出数组大小、精度和字节跳过,以及机器字节序。同时,解释了fseek函数在文件指针定位中的应用,如移动文件指针到开头、当前位置或末尾。强调了skip参数与fseek的区别,skip用于循环读取时的间隔,而fseek用于调整读写位置。
摘要由CSDN通过智能技术生成

fopen

 

fread

     常见用法:

      1、A=fread(fileID,sizeA,precision,skip,machinefmt) 

      2、A=fread(fileID)

      3、fread(fileID,sizeA)

      4、A=fread(fileID,sizeA,precision)

      5、A=fread(fileID,sizeA,precision,skip)

      6、A=fread(fileID,sizeA,precision,skip)

   重点说明A=fread(fileID,sizeA,precision,skip,machinefmt)中参数具体含义,其余与这个一样

   1、fileID 文件标识

       由fopen()返回

   2、sizeA  输出数组的大小尺寸

      有3种参数,Inf、n、[m,n]

      Inf :输出数组是列向量,文件中每一个元素对应一个值

        n :有n个元素的列向量

    [m,n] 代表按列向量排列的m行n列的矩阵,n可以取Inf,但m不可以

    3、precision   解码类型即需要读取数据的类型和大小,默认'uint8=>double'

       常见有char、int8、int16等,需要根据原始数据格式来确定

    4、skip   循环跳过多少字节即每读一个就间隔skip个precision 类型大小再读,,默认为0

    5、machinefmt 待读取数据字节的排列方式,默认为'n'

         需要根据源数据格式来确定,有'b'、'l'、's'、'a'等格式

         'n'就是系统字节的排列顺序,即‘native’

         'b'就是'ieee-be',即'Big-endian ordering',即低位字节排放在内存的高地址端,高位字节排放在内存的低地址端

          'l'就是‘ieee-le’,即‘Little-endian ordering’即低位字节排放在内存的低地址端,高位字节排放在内存的高地址端

 

 

fseek:

         fseek是读写操作文件位置指针​

status=fseek(fid, offset, origin_pos)

 其中fid为文件句柄,

offset表示位置指针相对origin_pos(即参考位置)移动的字节数,当offset

 > 0    向文件末尾方向移动.

= 0     不改变方向.

< 0     向文件开头方向移动.

origin_pos表示位置指针移动的参照位置,当origin_pos:

'bof' or -1     文件开头

'cof' or 0      文件当前位置

'eof' or 1      文件末尾。

若定位成功,status返回值为0,否则返回值为–1。

 

注意fseek与fread中skip的区别,skip是循环跳读,即每隔skip就读取一个值

​​​​​​

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值