zoukankan      html  css  js  c++  java
  • matlab中函数fscanf

    matlab中函数fscanf

    matlab中函数fscanf在文件读取方面的实例如下:

    从文件中有格式地读数据 fscanf

    语法1:[a,count]=fscanf(fid,format,size)

    根据指定的格式从fid 文件按照格式format读出数据并按size的格式放入内存。

    a :读出的数据放入内存的变量名

    count :返回值。0:失败、n>0:成功,n是读出数据个数。

    fid :文件号

    size :a的数据的格式

    N : 列向量 

    inf : 读出文件全部数据

    [M,N] : 读出数据以M*N的格式放入变量名a内

    format :读出数据的格式

    format是字符形式,与C语言基本相同。字符形式中有“%”与字符集(d,i,o,u,x,e,f,g,s,c,…)搭配构成。

    如: %s:单字符读

         %c:读space字符

    例:s=fscanf(fid,'%s') 返回一个字符。

        a=fscanf(fid,']') 返回一个五位十进制整数。

    size是一个[m n]的向量,m为行,n为列(注意,这里读取的顺序是按列优先排列的,不明白的话可以看下面的例子),若n取inf表示读到文件末尾。

    fid为fopen打开文件的返回值,

    format是格式化参数(像printf、scanf)。

    举个小例子:

    内容:    13,   1,    3.4

            3,    2.1,  23

              1,    12,   2

            4,    5.4,  6

    现在为了读取001中的数据存在一个数组里,可以用如下方法

    fid=fopen('001.txt');

    data=fscanf(fid,'%f,%f,%f',[3,inf]) ;%这里得用单引号

    fclose(fid);

    这时data中的数据如下:

    13    3     1     4

    1     2.1   12    5.4

    3.4   23    2     6

  • 相关阅读:
    java线程池及创建多少线程合适
    消息队列消息积压了怎么办?
    Redis线程模型
    redis单线程如何支持高并发
    基于redis实现分布式锁
    PHP面试总结
    【转】Redis入门
    面试常考之二叉树
    计算机网络之面试常考
    操作系统之面试常考
  • 原文地址:https://www.cnblogs.com/yymn/p/4565947.html
Copyright © 2011-2022 走看看