zoukankan      html  css  js  c++  java
  • MATLAB读取文件——从非常规文本文件中读取数据

    从非常规文本文件中读取数据

    以下示例演示如何使用 textscan 函数从非常规文件中导入数据。在使用 textscan 时,您的数据无需为常规的行列模式,但必须为重复模式。

    创建一个名为 nonrect.dat 的文件,其中包含以下内容(复制并粘贴到文本编辑器):

    begin
    v1=12.67
    v2=3.14
    v3=6.778
    end
    begin
    v1=21.78
    v2=5.24
    v3=9.838
    end

    使用 fopen 函数打开要读取的文件。

    fileID = fopen('nonrect.dat');

    fopen 返回一个文件标识符 fileIDtextscan 调用该标识符从文件中读取数据。

    使用格式设定符和分隔符参数描述数据的模式。典型的格式设定符包括:表示字符向量的 '%s',表示整数的 '%d' 或者表示浮点数的 '%f'。要导入 nonrect.dat,请使用格式设定符 '%*s' 指示 textscan 跳过包含 begin 和 end 的行。将字面值 'v1=''v2=' 和 'v3=' 作为格式设定符的一部分,这样 textscan 也将忽略这些字面值。

    formatSpec = '%*s v1=%f v2=%f v3=%f %*s';

    使用 textscan 导入数据。将文件标识符 formatSpec 作为输入传递。由于每个数据字段都在一个新行上,因此分隔符为换行符 (' ')。要将所有浮点数据合并到单个数组中,请将 CollectOutput 名称-值对组参数设置为 true

    C = textscan(fileID,formatSpec,...            
                    'Delimiter', '
    ', ...
                    'CollectOutput', true)
    C = 
    
        [2x3 double]

    textscan 返回元胞数组 C

    关闭文件。

    fclose(fileID);

    查看 C 的内容。

    celldisp(C)
    C{1} =
     
       12.6700    3.1400    6.7780
       21.7800    5.2400    9.8380



  • 相关阅读:
    idea快捷方式2
    idea快捷方式1
    小程序数组倒序
    小程序列表倒计时 wxs 实现
    cnpm
    小程序的空判断
    小程序正则写法
    Sphinx中文入门指南——新手可先看此文
    sphinx –rotate机制详解
    sphinx数据文件简析
  • 原文地址:https://www.cnblogs.com/YiDongZhao/p/14094345.html
Copyright © 2011-2022 走看看