直接改成用cell去做吧!
做法如下:
cd('yourTxtFile') % 到你存盘案的路径去
files = ls(); % list all files in directory
files = files(~cellfun(@isempty, regexp(cellstr(files),'SPI\d*_\d*.txt')), :);
% capture the files you want
txtFiles = cellfun(@(x) dlmread(x), cellstr(files), 'UniformOutput', false);
% read all files
for i = 1:size(txtFiles,1)
x = txtFiles(i, 1);
for j = 1:size(x, 1)
if x(j, 5) < 0
% do something
end
end
end
※ 引述《cji4284503 (HearMe)》之铭言:
: 大家好,小弟是matlab新手,还请大家帮忙解惑
: 我遇到的问题不是如何读取txt档,而是后续写判断式的读档问题
: 前言
: 我总共有4860个txt档要跑,每一个txt档都是540X9的矩阵
: 档名是以SPI3_1、SPI3_2的规律排列
: 目的是希望汇出4860个SPIsum以及SPIavg值
: 所以先以零阵列的方式给SPIsum和SPIavg值
: 依序叫出4860个txt档这个步骤已经爬文解决
: 问题在 %这里的问题还没解决 这一行
: 附上部分程式码如下
: