第一次来这里请温柔
所以基本的想法是我有只有txt文件的文件夹,每个文件大约有20000个点。我只希望每个人都有特定的时间间隔。
我有一个单独的文件,其范围看起来像这样
。 2715 2955
1132 1372
每行代表我想要的范围
我想批量加载所有文件并导出每个文件的范围。我已经失去了太多的睡眠,请帮忙
dirName = '*'; %# folder path
files = dir( fullfile(dirName,'*.txt') ); %# list all *.xyz files
files = {files.name}' ; %'# file names
data = cell(numel(files),1) ; %# store file contents
for u=1:numel(files)
A=files{u} ; %# full path to file
files{u};
STR1 = A
B=load(STR1);
end
这是我在2天内提出的所有内容。我是matlab的新手 感谢
答案 0 :(得分:0)
非常好的帮助是fscanf的http://www.mathworks.co.uk/help/matlab/ref/fscanf.html的matlab帮助。此外,在您的负载中,您没有路径。将for循环中的最后两行替换为:
STR1 = [dirName A]
fileID = fopen(STR1,'r');
formatSpec = '%f';
B = fscanf(fileID,formatSpec)
或尝试:
delim = ' ';
nrhdr = 0;
STR1 = [dirName A]
A = importdata(STR1, delim, nrhdr);
A.data将是您的数据,我假设没有标题行。