精华内容
下载资源
问答
  • 使用matlab批量删除txt文件中连续的空格,只保留其中一个。如有两个连续的空格,删掉一个,留下一个。
  • 使用matlab寻找序列中缺失的txt文件,同时批量删除txt文件中的空格或斜杠
  • MATLABMatlab删除文件或者文件

    万次阅读 2018-11-19 13:20:18
    Matlab删除文件基本操作 删除一个文件:delete(filename) 删除一类文件:delete(‘*.后缀’) 删除文件夹及文件夹下的文件:rmdir(文件夹名字,‘s) **代码如下: ** % get multiply station observe path ...

    Matlab删除文件基本操作

    删除一个文件:delete(filename)
    删除一类文件:delete(‘*.后缀’)
    删除文件夹及文件夹下的文件:rmdir(文件夹名字, ‘s’)
    代码如下:

    % get multiply station observe path
    destin_dir = '/media/david/DavidPassport/MyGNSS/GNSSData/Observation/IGS_DATA/Fineshed/allStations/';
    file_names = dir(destin_dir);
    flag = 1;
    floder_names = [];
    station_names = [];
    for k = 1 : length(file_names)
        if(file_names(k).isdir &&~strcmp( file_names(k).name, '.') && ~strcmp( file_names(k).name, '..'))
            flood_name = file_names(k).name;
            temp_path = [destin_dir file_names(k).name '/'];
            station_names = [station_names; flood_name(1:4)];
            floder_names{flag} = temp_path;
            flag = flag + 1;
        end
    end
    
    len_total = numel(floder_names);
    for k = 1 : len_total
        sprintf('iteam: %g, total: %g, folder: %s', k, len_total, floder_names{k})
        path_Kalman_pos = [floder_names{k} 'Products_Kalman/'];
        path_SRIF_pos = [floder_names{k} 'Products_SRIF/'];
        if 0 ~= exist(path_Kalman_pos)
            disp(path_Kalman_pos)
            rmdir(path_Kalman_pos, 's') %rmdir
        end
        if 0 ~= exist(path_SRIF_pos)
            disp(path_SRIF_pos)
            rmdir(path_SRIF_pos, 's') %rmdir
        end
        
    end
    
    展开全文
  • 翻阅了些网上现有的代码资料,发现都不理想,本文使用一些笨法子实现了同名文件中的指定行删除功能。 % system("修改后缀.bat"); % 运行.bat脚本,忽略即可 fileID = fopen('test2.txt','r+'); % 以读写方式打开...

    翻阅了些网上现有的代码资料,发现都不理想,本文使用一些笨法子实现了同名文件中的指定行删除功能。

    % system("修改后缀.bat");                % 运行.bat脚本,忽略即可
    fileID = fopen('test2.txt','r+');       % 以读写方式打开源文件
    fout   = fopen('test2_new.txt','w');    % 以写的方式打开替身文件
    for i=1:16
        fgetl(fileID);                      % 将光标移动到第16行
    end
    while ~feof(fileID)                     % 如果不到文末,持续循环
        tline = fgetl(fileID);
        fprintf(fout,'%s\n',tline);         % 将内容写入到替身文件
    end
    fclose(fout)                            % 关闭文件
    fclose(fileID)
    system("del test2.txt");                % 删除源文件
    system("copy test2_new.txt test2.txt"); % 复制替身文件为源文件同名文件
    system("del test2_new.txt");            % 删除替身文件
    

    说明: 该法效率较为低下,本质上是将想保留的文本内容保存到一个新文件中,然后删除源文件,并重命名替身文件,借助了MATLAB的system函数及DOS命令。

    展开全文
  • 关于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
    
    展开全文
  • matlabtxt文件导入成mat文件,并且是double形式的。 1.需要先将txt文件存在m文件的文件夹里(工作路径), ...3.将m文件里的txt文件删除,并将代码区修改。 load(‘D:\MATLAB\txtmat文件\Data1.mat’); ...

    matlab将txt文件导入成mat文件,并且是double形式的。
    1.需要先将txt文件存在m文件的文件夹里(工作路径),
    load(‘t.txt’);
    2.将已经在工作区的mat文件保存到固定的文件夹。
    save(‘D:\MATLAB\txtmat文件\t.mat’);
    3.将m文件里的txt文件删除,并将代码区修改。
    load(‘D:\MATLAB\txtmat文件\Data1.mat’);

    展开全文
  • clear all close all clc fin=fopen(['1.txt'],'r'); if fin&gt;0 ... % 函数feof(fid)用法:文件指针 fid 到达文件末尾时返回“真”值;否则返回“假”; % while ~feof 表示 若 未读到...
  • 根据txt文档不同种类介绍不同的读取数据方法一、纯数据文件(没有字母和中文,纯数字)对于这种txt文档,从matalb中读取就简单多了例如test.txt文件,内容为17.901 -1.1111 33.04517.891 -1.1286 33.04517.884 -1.1345...
  • matlab读取txt文件大全

    万次阅读 2018-12-23 10:39:30
    文章参考:... 笔记留作个人科研使用,如有转载不允许,请告知,立刻删除. 文件读取方法 目标:读取每一行数字数目不同的纯文本文件。形如: 9 289734689 002874...
  • close all clear all clc A=[]; b=1; for i=1:499  m = num2str(i,'%06d');  fid = fopen(['G:\实验数据\txt\',m,'.txt'],'r');  if fid  A(b)=i;  b=b+1;  end end % fid=fopen
  • matlab中常见txt文件读入的实用方法

    万次阅读 2018-11-14 07:55:23
    matlab中常见txt文件读入的实用方法
  • Matlab导入txt文件并取其中一列数据

    万次阅读 多人点赞 2018-06-25 18:27:35
    首先确保Matlab当前所在文件夹为txt文件所在文件夹,然后命令行执行:X = load('filename.txt'); 即将txt数据存入一个X矩阵。之后我们取这个矩阵的第一列数据和第二列数据:a =X(:,1);b =X(:,2);取好之后以第一列为...
  • 因为用matlab比较多,之前也用matlab处理过txt文件(读取,然后在matlab里处理,不需要输出), 我就在想我先将数据读取到matlab,然后将自己需要的列组成了矩阵,输出到txt中。 1.读取 [time,CO2, PM25, PM10, ...
  • MATLAB判断文件是否存在、删除文件

    千次阅读 2020-04-01 15:01:51
    MATLAB判断文件是否存在: exist('output.txt','file') 如果output.txt存在,返回2,若不存在返回0 MATLAB删除文件: delete('output.txt');
  • matlab 中的删除文件

    千次阅读 2017-03-13 18:55:33
    Matlab中有两种删除文件的方式: 一种是删除文件 delete()函数 //可以使用help delete命令查询delete()函数的使用方法  delete('p1.jpg') 表示删除当前路径下的名为p1.jpg的图片文件删除其他文件一样,...
  • matlab批量txt文件导入,跪求大神给码。。。!!!!!!!!!如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表...
  • 一、matlab代码 data=importdata('data.txt'); xlswrite('data.xls',data); 二、python代码
  • MATLAB,文件夹或文件的,创建、复制、移动、删除、重命名等等
  • 2、首先确保Matlab当前所在文件夹为txt文件所在文件夹,然后命令行执行: X = load('2019_03_21_08_59_07_fitness.txt'); 即将txt数据存入一个X矩阵。 之后我们取这个矩阵的第一列数据和第二列数据: a =X(:,1)...
  • matlabtxt文件(含字符及数值)处理 (2008-08-02 09:45:12) 转载▼ 标签: 杂谈 分类:matlab及C学习 Matlab文件操作及读txt文件ZZ 2008-07-11 16:43 matlab文件操作文件...
  • matlab批量读取处理文件

    千次阅读 2021-04-14 21:23:49
    matlab需要读取一个文件夹下的多个子文件夹中的某种指定格式的文件,该如何批量操作呢? 首先,先介绍几个matlab中常用的函数 1. dir() 2. length() 3. isequal() 4. fullfile() 参考: ...
  • MATLAB中修改文件的内容

    千次阅读 2019-10-23 21:22:18
    通常,我们修改一个文本文件中的内容时,一般是创建一个新的文件,然后把改动后的和没有改动的一起写入新文件中。 %打开需要修改的文件 fid = fopen('abc.xml','r'); %创建生成的文件 fid2 = fopen('abc_.xml','w...
  • 批量删除文件txt文件的前几行

    热门讨论 2011-12-03 04:22:03
    设置要操作的文件夹路径如"d:\"及删除的前N行如3
  • matlab读取txt指定位置的信息 path_wind='分析配置参数-涡振.txt'; fid=fopen(path_wind); %打开文件 Mct_command=textscan(fid,'%s','Delimiter','\n'); %按照一定格式读取fid文件 Mct_command=Mct_command{1,1}; ...
  • MATLAB打开nc文件并读取nc文件数据

    千次阅读 2020-06-04 10:19:39
    MATLAB打开nc文件 ncdisp('E:\**\**.nc') ...将nc文件中所需要的数据保存至txt文档 首先,将所需要的数据提取出来 start=[125,89,123] count=[17,14,124] tmax=ncread('E:\**\**.nc','tmax',start,count)
  • MATLAB对于文本文件(txt)进行数据读取的技巧总结(经典中的经典)由于本帖内容较多,部分转自他人的心得,因此,凡转贴的地方仅用“----转----”标注,原作者略去,在此对所有原作者表示感谢! 特别说明:由于大家...
  • txt文档matlab处理

    2018-12-02 22:01:48
    txt文档matlab重排版 工程软件常用txt格式存储数据,但是不同软件的数据接口不同,经常需要对数据重排版或者清洗。 本文包含以下部分: 数值格式转换,文件自动读写 文件自动读写 文件读写有多种命令,可以读出...
  • matlab批量处理excel(CSV)文件数据

    万次阅读 多人点赞 2019-01-29 21:51:25
    今天是2019-1-29,参加完2019年美国大学生数学建模竞赛,小伙伴都回家了,就我一个人在寝室,太无聊了,就把在比赛中遇到的excel批处理,写一下思路(ps:其实我在比赛中利用的是SQLServer数据库和matlab相结合的数据...
  • matlab循环读取文件

    2020-05-22 17:06:00
    Matlab如何循环读取文件转载http://www.cnblogs.com/woshitianma/p/3724922.html第一种方法①List =dir('*.jpg');第二种方法②I=ones(8,5);第三种方法③ 转载http://www.cnblogs.com/woshitianma/p/3724922.html ...
  • 1、判断某目录下是否存在某个文件夹,如果不存在则创建 if exist('data','dir')==0 mkdir('data');% 或者用 mkdir data,在当前目录下,生成一个data文件夹 end 注意:'data'包括所在的路径以及要创建的文件夹...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,149
精华内容 1,259
关键字:

matlabtxt删除文件

matlab 订阅