精华内容
下载资源
问答
  • 读取txt数据,根据数据绘制图形,可用于示波器信号读取
  • matlab读取txt文件并作图,txt为光谱仪测量的反射率数据,附上代码和反射率数据。
  • 读取txt文件内容matlab代码实现。本资源中包括了.txt测试文档matlab代码示例。
  • matlab读取txt文件

    千次阅读 2020-12-15 13:49:03
    Matlab读取 .txt文件 这里提供两种方法:1,load()函数。2,importdata()函数。 一、对于load()函数。 例子,data_txt.txt内容如下: 0 1.000000 1.000000 1.000000 1 3.000000 4.000000 5.000000 2 5.000000 7....

    Matlab读取 .txt文件

    这里提供两种方法:1,load()函数。2,importdata()函数。


    一、对于load()函数。

    例子,data_txt.txt内容如下:

    0    1.000000    1.000000    1.000000
    1    3.000000    4.000000    5.000000
    2    5.000000    7.000000   9.000000
    3   7.000000    10.00000   13.00000
    4    9.000000   13.00000    17.00000
    5    11.00000    16.00000    21.00000

    example_load_txt.m 内容如下:

    clear all;
    close all;
    clc

    %对于类似的txt文件,不含有字符,只有数字
    data=load(‘F:\F桌面文件\data_txt.txt’);
    x=data(:,1);
    y1=data(:,2);
    y2=data(:,3);
    y3=data(:,4);
    plot(x,y1,‘r–’,x,y2,‘bo’,x,y3,‘ks’)


    二、对于importdata()函数。

    例子,data_txt_string.txt内容如下:

    i   co    c1     c2
    0 1.000000 1.000000 1.000000
    1 3.000000 4.000000 5.000000
    2 5.000000 7.000000 9.000000
    3 7.000000 10.00000 13.00000

    example_importdata_txt.m 内容如下:

    clear all;
    close all;
    clc

    %只是第一行有字符,则使用importdata可直接读取数据
    data1=importdata(‘F:\F桌面文件\data_txt_string.txt’);
    data2=data1.data; %若没有这一步,出不出来图。
    x=data2(:,1);
    y1=data2(:,2);
    y2=data2(:,3);
    y3=data2(:,4);
    plot(x,y1,‘r–’,x,y2,‘bo’,x,y3,‘ks’);


    另外,转 http://blog.sina.com.cn/s/blog_4b5b880c0100e7mm.html

    如何编写MATLAB程序才能实现对.TXT文档的读写呢?
    文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。

    1、文件的打开与关闭

    1)打开文件

    在读写文件之前,必须先用fopen函数打开或创建文件,并指定对该文件进行的操作方式。fopen函数的调用格式为:
    fid=fopen(文件名,‘打开方式’)
    说明:其中fid用于存储文件句柄值,如果返回的句柄值大于0,则说明文件打开成功。文件名用字符串形式,表示待打开的数据文件。常见的打开方式如下:
     ‘r’:只读方式打开文件(默认的方式),该文件必须已存在。
     ‘r+’:读写方式打开文件,打开后先读后写。该文件必须已存在。
     ‘w’:打开后写入数据。该文件已存在则更新;不存在则创建。
     ‘w+’:读写方式打开文件。先读后写。该文件已存在则更新;不存在则创建。
     ‘a’:在打开的文件末端添加数据。文件不存在则创建。
     ‘a+’:打开文件后,先读入数据再添加数据。文件不存在则创建。
    另外,在这些字符串后添加一个“t”,如‘rt’或‘wt+’,则将该文件以文本方式打开;如果添加的是“b”,则以二进制格式打开,这也是fopen函数默认的打开方式。

    2)关闭文件

    文件在进行完读、写等操作后,应及时关闭,以免数据丢失。关闭文件用fclose函数,调用格式为:
    sta=fclose(fid)
    说明:该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回-1。如果要关闭所有已打开的文件用fclose(‘all’)。

    2、二进制文件的读写操作

    1)写二进制文件

    fwrite函数按照指定的数据精度将矩阵中的元素写入到文件中。其调用格式为:
    COUNT=fwrite(fid,A,precision)
    说明:其中COUNT返回所写的数据元素个数(可缺省),fid为文件句柄,A用来存放写入文件的数据,precision代表数据精度,常用的数据精度有:char、uchar、int、long、float、double等。缺省数据精度为uchar,即无符号字符格式。
    例6.8 将一个二进制矩阵存入磁盘文件中。

    a=[1 2 3 4 5 6 7 8 9];
    fid=fopen(‘d:\test.bin’,‘wb’) %以二进制数据写入方式打开文件
    fid =
    3 %其值大于0,表示打开成功

    fwrite(fid,a,‘double’)
    ans =
    9 %表示写入了9个数据

    fclose(fid)
    ans =
    0 %表示关闭成功

    2)读二进制文件

    fread函数可以读取二进制文件的数据,并将数据存入矩阵。其调用格式为:
    [A,COUNT]=fread(fid,size,precision)
    说明:其中A是用于存放读取数据的矩阵、COUNT是返回所读取的数据元素个数、fid为文件句柄、size为可选项,若不选用则读取整个文件内容;若选用则它的值可以是下列值:N(读取N个元素到一个列向量)、inf(读取整个文件)、[M,N](读数据到M×N的矩阵中,数据按列存放)。precision用于控制所写数据的精度,其形式与fwrite函数相同

    3、文本文件的读写操作

    1)读文本文件

    fscanf函数可以读取文本文件的内容,并按指定格式存入矩阵。其调用格式为:
    [A,COUNT]=fscanf(fid,format,size)
    说明:其中A用来存放读取的数据,COUNT返回所读取的数据元素个数,fid为文件句柄,format用来控制读取的数据格式,由%加上格式符组成,常见的格式符有:d(整型)、f(浮点型)、s(字符串型)、c(字符型)等,在%与格式符之间还可以插入附加格式说明符,如数据宽度说明等。size为可选项,决定矩阵A中数据的排列形式,它可以取下列值:N(读取N个元素到一个列向量)、inf(读取整个文件)、[M,N](读数据到M×N的矩阵中,数据按列存放)。

    2)写文本文件

    fprintf函数可以将数据按指定格式写入到文本文件中。其调用格式为:
    fprintf(fid,format,A)
    说明:fid为文件句柄,指定要写入数据的文件,format是用来控制所写数据格式的格式符,与fscanf函数相同,A是用来存放数据的矩阵。
    例6.9 创建一个字符矩阵并存入磁盘,再读出赋值给另一个矩阵。

    a=‘string’;
    fid=fopen(‘d:\char1.txt’,‘w’);
    fprintf(fid,’%s’,a);
    fclose(fid);
    fid1=fopen(‘d:\char1.txt’,‘rt’);
    fid1=fopen(‘d:\char1.txt’,‘rt’);
    b=fscanf(fid1,’%s’)
    b =
    string

    matlab读txt文件

    fid=fopen('fx.txt','r');
    %得到文件号
    [f,count]=fscanf(fid,'%f %f',[12,90]);
    %把文件号1的数据读到f中。其中f是[12 90]的矩阵
    %这里'%f %f'表示读取数据的形势,他是按原始数据型读出
    fclose(fid);
    %关闭文件
    

    另外有的txt文件还可以用load来打开
    其语句为

    f=load('xxx.txt')
    

    个人觉得用第一种方式较好。因为有些时候,特别是xxx.txt 的一行种有多个数据时用load
    就比较麻烦了。

    转自https://blog.csdn.net/awakeljw/article/details/76175515

    matlab的文件读取函数功能可以读取各种文件类型,包括

    textread(字母和数值每行格式一致)
    xlsread(读取excel文件)
    importdata(字母和数值分开,以数字为主,字母只存在前几行)
    load(纯数据)
    dlmread(单一分隔符的纯数据或ASCII数据文件)
    textscan(类似于textread,但使用前必须fopen打开文件)
    csvread(类似于xlsread,读取.csv格式的文件)
    fscanf(读取已知文件格式的文本文件)

    matlab对文件中混乱的文本格式读取操作总结

    对于本文字符数字较为混乱的文本进行文本操作需要对文件内部进行操作,包括文本位置指针,文件逐行读取,字符匹配等等复杂操作。主要用到的几个函数有

    feek(设置指针位置)
    ftell(获得指针位置)
    frewind(重设指针到文件起始位置)
    feof(测试指针是否在文件结束位置)

    具体用法:
    fseek(fid,-1,’eof’),指针到末尾
    fseek(fid,2,’bof’),起始位置后第二个字符位置
    ftell(fid);找到指针位置
    frewind(fid),指针回到起始
    feof(fid)判断指针是否在末尾

    原文链接
    https://www.cnblogs.com/carle-09/p/9013582.html

    展开全文
  • matlab读取txt文件然后画图

    热门讨论 2013-04-20 14:06:47
    matlab读取txt文件然后画图,只需改变文件路径就可用
  • 原创matlab读取txt中文文本的解决方案-程序.rar matlab对中文的支持一直以来都是个不小的问题,尤其在读取文本方面。一般读出的中文文本都是乱码,网上找了半天没找到答案,自己研究了一下,在快要绝望的时候终于...
  • MATLAB读取txt格式的点云数据,好用,完美运行。
  • 这是我编写的一个小函数,用于解决永恒的麻烦,或者试图从一堆包含类似数据的文本文件读取实验数据。 例如解决方案_001.txt 解决方案_002.txt . . . 解决方案_00457.txt 所有这些都具有相似的数据结构。 可以在...
  • matlab读取txt文档数据

    2014-07-30 02:39:40
    matlab读取txt文档中的数据,如多个数据在同一行用空格符或逗号符隔开。
  • 详细的介绍了matlab读取txt文本数据的方法,包含示例代码
  • MATLAB读取显示txt格式点云(带数据)亲测可用, 谢谢支持。
  • 关于MATLAB读取txt文件的方法

    千次阅读 多人点赞 2019-11-25 16:57:41
    关于MATLAB读取txt文件的方法 一、如何读取一个文档下,多个txt文件? 一般读取的文件,命名都具有一定的规律,除去相同部分,剩下的变化按照时间、序号、某一特定的标志符等进行排列。 下面我们举个例子来操作。 ...

    iLoveMATLAB论坛最常见的问题Top200

    关于MATLAB读取txt文件的方法

    一、如何读取一个文档下,多个txt文件?
    一般读取的文件,命名都具有一定的规律,除去相同部分,剩下的变化按照时间、序号、某一特定的标志符等进行排列。
    下面我们举个例子来操作。

    假如文件夹里存在以下文件:
    cs20170701
    cs20170702
    cs20170703
    cs20170704

    cs20170731

    标签:cs代表产品类型,数字代表年月日。总共31个文件
    意义:整个生产部门在2017年7月份的生产记录表
    分析内容:首先我们观察所有的文件,它们具有相同部分:产品类型和年月,变化的部分只有日子数,那么,我们就可以使用一个循环来读取所有的txt文件,且保存得有规律。
    参考函数:loadtextread num2str
    解决方案:

    data=cell(1,31);%创建一个储存空间
    for num=1:9
            if num<10
                    data{num}=textread(['cs2017070' num2str(num) '.txt']);%将每日的数据分别存在一个cell空间内
            else
                    data{num}=textread(['cs201707' num2str(num) '.txt']);
            end
    end
    

    二、一个txt文件里全是数字数据的读取?

    例如sq.txt文件内容为:
    1 20.1 574 21
    2 7541 12 24
    3 45 21 45
    4 32 12 54.2.
    5 35.1 45.0 45.0

    标签:数字1为编号,数字2、3、4,分别为长、宽、高
    分析内容:这是最典型的纯数字文件,我们仅需读取数字就行了。
    参考函数:load

    解决方案:

    load sq.txt
    

    三、在问题二的基础上存在第一行数据为中文?

    例如sq2.txt文件内容为:
    编号 长 宽 高
    1 20.1 574 21
    2 7541 12 24
    3 45 21 45
    4 32 12 54.2
    5 35.1 45.0 45.0

    标签:同问题2
    分析内容:这里的文件内容,存在了一行中文汉字,load函数将不再适用,这里我们需要分为两个部分处理:1、中文处理;2、数字处理。
    参考函数:textread importdata

    解决方案:
    %方案一

    data=textread('sq2.txt','%s');%读取文件
    data=str2num(char(data(5:end)));%删除中文,并将cell转换成数字
    data=reshape(data,4,length(data)/4)';%重新按照格式排列
    

    %方案二

    data=importdata('sq2.txt');%读取的文字存在struct内,data为数字,textdata为中文
    data=data.data;%提取struct中的data
    

    四、读取中文与数字混合文件?

    一般此种文件格式为: 中文1:xxx, 中文2:xxx, 中文3:xxx,

    例如sq3.txt文件内容为:
    编号:1 长:20.1 宽:574 高:21
    编号:2 长:7541 宽:12 高:24
    编号:3 长:45 宽:、21 高:45
    编号:4 长:32 宽:12 高:54.2
    编号:5 长:35.1 宽:45.0 高:45.0

    标签:
    分析内容:这种固定的汉字和变化的数字,以形成汉字和数字混合出现,已经不能简单应用MATLAB自带函数处理,需要根据实际情况进行更加精准的处理。这里使用文件系统函数(fopen等函数)读取文件(与C语言读取文本相同),这方面的文件或经验,百度搜索有一大堆,我只分享一下它的最关键部分。
    关键函数:
    fopen 打开文件,返回地址,因为我们只是读取文件,所以用r权限
    fscanf 以某种方式读取文件,具体内容具体分析
    fscanf(FID,FORMAT,SIZEA) 其中:FID为文件地址(为fopen的返回值),FORMAT为读取txt文件的格式,SIZEA为读取的函数,如:[1 inf] 读取从第一行到最后一行
    fclose 关闭文件
    注意:这里的三个函数缺一不可(养成良好习惯,打开的文件要关闭)

    解决方案:

    fid=fopen('sq3.txt','r');%只读
    data=fscanf(fid,'编号:%d 长:%f 宽:%f 高:%f\n',[1 inf]);%按照读取文件的标准格式来写
    fclose(fid);%关闭
    data=reshape(data,4,length(data)/4)';%重新按照格式排列
    

    五、文件内容存在缺损(1)
    在某些产品检测时,得到的数据可能存在缺损值,即某个标签下的值不存在。

    例如sq4.txt文件内容为:
    123.1,754,124,12,57
    13,754.5,124,12,57.7
    23,754,124.2,12,
    12,754,12,57.8
    13,754,12.4,12,57
    12.5,754,124,12,57.6

    标签:每行总共5个数字,分别代表5个属性,分别用逗号隔开。但是因为某些原因,存在缺损值,缺损值也是有逗号隔开了的。第三行缺第5个值,第四行缺第3个值
    分析内容:这种缺损值,只是简单的数字值缺损,结构简单,缺损值少。
    关键函数:importdata

    解决方案:

    data=importdata('sq4.txt');%缺损的值将用NaN补全
    

    六、文件内容存在缺损(2)

    较之问题五,问题六的数据成分更加复杂。

    例如sq4.txt文件内容为:
    10:21:54,123.1,754,124,57,10/24,a
    10:21:56,13,754.5,124,12,57.7,21/54,b
    10:21:58,23,754,124.2,12,20/64,
    10:21:59,12,754,12,57.8,21/24,a
    10:22:01,13,754,12.4,12,57,
    10:22:02,12.5,754,124,12,57.6,22/54,b

    标签:总共存在8个属性,分别逗号隔开,属性1为时间 例如:10:21:54 10点21分54秒
    分析内容:这是一组成分复杂且带有缺损值的文件,每组数据具有一定规律但又存在差异,这种情况也是MATLAB自带函数所不能轻易解决的,且若使用文件系统函数,也将变得非常繁琐,这里将使用另一种方式:正则表达式。百度’正则表达式’,其它地方也有很多的学习资料,但是大多数地方都存在一个特点:讲解得很全面。伴随之存在着缺点:内容繁多而且复杂,且我们没必要了解这么多。这里我就针对读取txt文件,只介绍我们需要的关键东西。
    关键函数:regexp
    x=regexp(str1,str2); 其中str1表示原字符串,str2表示分割标志符,x表示匹配到的位置

    解决方案:
    我们先分析一组数据
    10:21:54,123.1,754,124,57,10/24,a
    数据格式: 数据1,数据2,数据3,数据4,数据5,数据6,数据7,数据8
    分析得知每个数据以逗号隔开,数据内容不限也可能为空,我们就可以以逗号为分割符将数据拆分开,如果相邻逗号位置相减为1,则该数据为空。

    clear;
    clc;
    data1=textread('cs20170704.txt','%s');%读取出所有的内容
    num=8;%总共8个数据
    data=cell(length(data1),num);%创建最后的存储空间
    str=',';%分割标志符
    for n=1:length(data1)
        addr=regexp(data1(n),str);%找到所有逗号位置
        addr=cell2mat(addr);%regexp返回值为cell类型,此变为mat
        data{n,1}=data1{n}(1:addr(1)-1);%数据1 时间不存在缺损,单独提出来
        for m=2:num-1%数据2-7
            if addr(m)-addr(m-1)==1%相邻逗号相减为1
                data{n,m}=NaN;%else
                data{n,m}=data1{n}(addr(m-1)+1:addr(m)-1);%数据非空 (前面逗号-1)到(后面逗号+1)
            end
        end
        if addr(7)==length(data1{n})%数据8 最后一个数据单独提出来
            data{n,8}=NaN;%else
            data{n,8}=data1{n}(addr(7)+1:end);%数据非空
        end
    end
    data
    
    展开全文
  • 生成的HEVC的txt文件众多,需要提取需要的bits 手动操作繁杂 针对多文件夹下多个相同的txt文件适用
  • 如何用matlab读取txt文件坐标

    千次阅读 2020-07-19 10:50:27
    matlab读取文本文件函数。 1、load——适合读取纯数据文本; 2、importdata——只读取数据,自动省略数据格式前后的字符,超大文件不适合; 3、textread、textscan——适合读取行列规整的文本,会存到元胞中,可...

    matlab读取文本文件函数。

    1、load——适合读取纯数据文本;
    2、importdata——只读取数据,自动省略数据格式前后的字符,超大文件不适合;
    3、textread、textscan——适合读取行列规整的文本,会存到元胞中,可通过headerlines省略读取字段名(字符行);
    4、csvread、dlmread——适合读取csv、xsl等文件格式文本;
    5、fprintf、fscanf——适合读取复杂的文本(中英文、数字串混杂出现);
    一、纯数据文件(没有字母和中文,纯数字)

    Z = load('web.txt');  
    a =Z(:,1);
    b =Z(:,2);
    c =Z(:,3);
    d =Z(:,4);

    其中每一列保存在a,b,c,d中,读取对应的坐标就可以进行获得相应的数据。

    展开全文
  • matlab读写txt文件

    千次阅读 2019-07-22 19:20:41
    一些简单的读写,记录一下,免得自己忘记 写入 首先是根据时间,比如2014年12月8日起至2015年12月8日止,分成10000个时间段,用matlab的datanum之类的做,算出来的是"yyyymmddHHMMSS"的double形式。输入文件要求是...

    一些简单的读写,记录一下,免得自己忘记

    写入

    首先是根据时间,比如2014年12月8日起至2015年12月8日止,分成10000个时间段,用matlab的datanum之类的做,算出来的是"yyyymmddHHMMSS"的double形式。输入文件要求是20141108060000,这样的整型,但是用for循环一个一个去改是不行的。直接用数组函数 time_int=arrayfun(@uint64,time);

     

    time改好后,把time和坐标文件都写入一个txt,形式如下

    第一列是uint64类型的时间,后面三列是float类型的x,y,z坐标,中间用空格分开

    写入代码(我有很多组不同的坐标数据,分为23个文件)

    数据成功写入,读数据直接用importdata()函数,非常方便

    展开全文
  • MATLAB读取txt文件并存入矩阵

    千次阅读 2021-04-30 16:24:15
    fileID=fopen('Data.txt'); A=textscan(fileID,'%f %*f %*f %*f %f %f %f'); fclose(fileID); Matrix=cell2mat(A); textscan中,%*f表示不读取该列数据。
  • Matlab读取txt文件中的数据(使用textread函数)

    万次阅读 多人点赞 2018-04-18 22:13:45
    在使用Matlab处理数据时,我们经常需要读取txt文档,可以使用Matlab中强大的textread函数。它的基本语法是:[A,B,C,...] = textread(filename,format)[A,B,C,...] = textread(filename,format,N)其中filename就是...
  • MATLAB读写txt文件

    万次阅读 2018-08-02 21:55:29
    读取 使用textread函数,具体示例如下: s = textread('E:\Project\documents\data.txt');   ...使用fopen+fprintf函数,具体...fid=fopen('D:\Documents\MATLAB\data.txt','w'); fprintf(fid,'%d',data);  ...
  • 该函数只能加载仅含有数字的文本文件,如果文档中夹杂着字母或者文字,就会报错。 2、importdata Data = importdata("filename.txt"); 既可以读取数据又可以读取字符:Data.data矩阵里存放的是纯数字,Dat...
  • MATLAB读取和写入txt文件https://blog.csdn.net/jisuanjiguoba/article/details/79997805txt文件中既有空格又有tab键,请问怎么正确读取txt里面内容?https://www.ilovematlab.cn/thread-529920-1-1.htmlMATLAB读取...
  • Porject_Kiwi 离线式数字信号处理(一) 使用Matlab读取TXT数据文件并做FFT分析 在我群项目Project_Kiwi中,LTC2208的评估已经圆满完成,现在开始下一步的工作。 今天要来测试的,是使用matlab对数据进行简单处理。 ...
  • matlab读取txt文件为数组

    千次阅读 2019-03-14 21:02:39
    clc;clear;close all; rows = [1 180];...[FileName,PathName] = uigetfile('*.txt','Select the Txt files');%弹出对话框,然后选择你要处理的文件 fid = fopen([PathName FileName]); temp = textscan(f...
  • 选择数据文件后 可以看到如下界面 可以根据实际选择分隔符,一般是空格或者逗号 有些第一行还有变量名,所以一般舍去第一行等 最后点击导入所选内容即可 优缺点 不能打开太大的文件数据,这个跟电脑性能也...
  • %读取1.txt里面的内容,每一行按照字符串,字符串,浮点数的格式读取,中间间隔为空格 fid = fopen('1.txt'); data = textscan(fid,'%s %s %f'); fclose(fid); %读取的结果为三个元胞数组cell{1,
  • Matlab读取txt文件、xlsx文件

    千次阅读 2019-04-12 19:50:27
    MATLAB读取和写入txt文件 ...txt文件中既有空格又有tab键,请问怎么正确读取txt里面内容? https://www.ilovematlab.cn/thread-529920-1-1.html MATLAB读取和写入Excel文件 1. 读取Excel文件 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,072
精华内容 3,228
关键字:

matlab读写txt文件

matlab 订阅