zoukankan      html  css  js  c++  java
  • matlab如何读取未知行数,带头文件和字段名的txt文件

    文件格式是这样的
    20120108 50024 X235RZB30801 01 15
    2361 2362 2363 2364 2365 2366 2367 2368 2369 236A 236B 236C 236D 236E 236F
    18854.49 17757.25 90809.09 98429.45 21283.85 77620.26 45330.92 70173.54 16957.37 -9.51908 18.67279 27.211 22.175 1182.5 1029.49
    18854.81 17757.46 90808.71 98429.45 21283.85 77620.20 45330.57 70173.99 16957.39 -9.51824 18.67171 27.206 22.175 1181.1 1029.27
    18854.44 17757.52 90808.91 98429.38 21283.85 77620.48 45330.77 70173.82 16957.51 -9.52009 18.67234 27.212 22.175 1181.4 1028.74
    18854.70 17757.32 90809.15 98429.46 21283.85 77619.98 45330.61 70173.45 16957.49 -9.51951 18.67069 27.214 22.175 1182.8 1028.04
    所有的数据在txt文件中都是以空格符隔开的,以上是为了让大家看清楚才换行间断的。所以整个文件好像是只有一行。
    20120108 50024 X235RZB30801 01 15  这些是头文件。
    2361 2362 2363 2364 2365 2366 2367 2368 2369 236A 236B 236C 236D 236E 236F 这是十五个字段名。
    18854.49 17757.25 90809.09 98429.45 21283.85 77620.26 45330.92 70173.54 16957.37 -9.51908 18.67279 27.211 22.175 1182.5 1029.49  这十五个数据就是每个字段对应的。
    列数就是十五,行数应该是1440行,一分钟一行,一天24小时。
    试了textread,fscanf,我是matlab新手,一直不知道该怎么样读取。
    我想要的结果就是跳过头文件和字段,将数据存储成15列乘1440的矩阵。
    如果转换后能在每行数据前加上这一列时间就更好了。
    2012-01-08 00:00:00
    2012-01-08 00:01:00
    2012-01-08 00:02:00
    2012-01-08 00:03:00
    请大家帮忙实现,非常感谢

    sample vision

    filename='data.txt';
    fid=fopen(filename, 'r');
    %% 读第一行,无视之
    firstLine=fgetl(fid);
    % disp(firstLine);
    %% 读第二行,解析为列头
    secondLine=fgetl(fid);
    columnHeader=regexp(secondLine, 's', 'split');
    fprintf(1, '数据列数为:%d
    ', size(columnHeader, 2));
    %% 读之后的数据行
    dataLine=fgetl(fid);
    data=cell(1440, size(columnHeader, 2));
    i=1;
    while(dataLine~=-1)
        % 显示数据行
    %     disp(dataLine);
        % 处理数据行
        temp=regexp(dataLine, 's', 'split');
        data(i, 2:16)=temp(1, 1:15);
        % 读取下一行
        dataLine=fgetl(fid);
        i=i+1;
    end
    % 显示在一张表中
    f = figure;
    colnames = columnHeader;
    t = uitable(f, 'Data', data, 'ColumnName', colnames, 'Position', );
  • 相关阅读:
    PowerDesigner建立与数据库的连接,以便生成数据库和从数据库生成到PD中。[Oracle 10G版]
    如何进行数据库,比如ORACLE,SQL SERVER的逆向工程,将数据库导入到PowerDesigner中
    PowerDesigner PDM 生成SQL脚本 去除双引号方法
    PowerDesigner删除外键关系,而不删除外键列[转] 及编码格式
    powerdesigner导出sql
    SQLSERVER存储过程基本语法
    jQuery选择器大全(48个代码片段+21幅图演示)
    fiddler使用
    基于.NET平台常用的框架技术整理
    Windows 按键
  • 原文地址:https://www.cnblogs.com/AI-Algorithms/p/3669720.html
Copyright © 2011-2022 走看看