matlab文件批量导入问题总结
作者:互联网
matlab R2014a,想要批量导入一个文件夹中的3000个txt文件,文件命名规则为“0-0.txt”到“159-199.txt",每个txt文件有200个数值(数值模板如下),想要将这些文件批量读入到matlab中,变成一个32000*200的矩阵,怎么操作呢?求大神附代码指导!!txt文件数值如下:
-1.000000
-1.000000
2.000000
2.000000
0.000000
-1.000000
1.000000
1.000000
1.000000
-1.000000
当前代码编辑为:files=dir('F:\Mocahan\2\*.txt');
mn=size(files,1);
for i=1:20
str = files(i).name;
A = load(str);
B= A(:,1:0);
end
运行时报错了,显示为“错误使用 load;无法读取文件 '0-0.txt': 没有此类文件或目录。”
如果你的txt不在当前目录下,需要将完整路径给出,load(['F:\Mocahan\2\' str])
现在有一个文件夹 里面有800个的txt文件 文件的名字按照数字顺序从1到800 每个TXT文件内容 共三列数字 每列1000行
|
- function mytextread
- clc
- [filename pathname index]=uigetfile('.jou','请选择结果文件','','MultiSelect','on');
- if index
- if iscell(filename)
- len=size(filename,2);
- res=[];col_title=cell(1,len);
- for i=1:len
- fid=fopen([pathname filename{i}]);
- col_title{i}=strtok(filename{i},'.jou');
- [val pos]=textscan(fid,'%s%f','headerLines',6,'commentStyle','-');
- val=cell2mat(val(:,2));
- fclose(fid);
- res=[res val];
- end
- end
- xlswrite(strcat(pathname,'\','res.xls'),{'Cavity10','Cavity9', 'Cavity8' ,'Cavity7' ,'Cavity6' ,'Cavity5', 'Cavity4', 'Cavity3', 'Cavity2', 'Cavity1' ,'mean'},1,'B1')
- xlswrite(strcat(pathname,'\','res.xls'),col_title',1,'A2')
- xlswrite(strcat(pathname,'\','res.xls'),res',1,'B2')
- end
- namelist=dir(['D:\1exdata\us_data_jiay','*.txt']);
- path(path,'D:\1exdata\us_data_jiay')
- l = length(namelist);
- for i=1:l file_name{i}=namelist(i).name; x{i}= load(file_name{i});
- end
- namelist = dir('D:\1exdata\us_data_jiay\*.txt');
- file_name = {namelist.name};
- l = length(file_name);
- for i=1:l
- x{i}= load(file_name{i});
- end
标签:文件,文件批量,end,name,res,导入,matlab,txt,1.000000 来源: https://blog.csdn.net/qq_39989653/article/details/89088106