matlab读取文件夹下所有文件的字符串,MATLAB读取文件夹下所有文件的文件名并读取数据...

MATLAB读取文件夹下特定类型格式文件的文件名并读取该格式文件的数据

利用代码对大量数据进行自动批处理时,首先需要获取该数据存放的文件夹(文件夹路径),然后获取该文件夹下某一类型数据所有的文件名,最后通过特定的数据读取代码读取数据进行自动批处理。这里以.txt文本类型作为示例(代码块中%后为注释内容)。

第一步:获取文件夹下某类型数据的所有文件名

主要包括三个步骤:

设置数据存放的文件夹路径;

显示该路径下特定格式(如.txt)的文件完整信息;

提取特定格式的所有文件的文件名。

Path = 'F:\Test\'; % 设置数据存放的文件夹路径

File = dir(fullfile(Path,'*.txt')); % 显示文件夹下所有符合后缀名为.txt文件的完整信息

FileNames = {File.name}'; % 提取符合后缀名为.txt的所有文件的文件名,转换为n行1列

第二步:读取特定格式的所有数据

主要包括三个步骤:

获取所提取文件的个数;

进入循环,按提取的文件名依次读取数据内容;

在循环中将读取的数据内容形成固定格式的数据矩阵。

Length_Names = size(FileNames,1); % 获取所提取数据文件的个数

for k = 1 : Length_Names

% 连接路径和文件名得到完整的文件路径

K_Trace = strcat(Path, FileNames(k));

% 读取数据(因为这里是.txt格式数据,所以直接用load()函数)

eval(['Data',num2str(k),'=','load(K_Trace{1,1})',';']);

% 注意1:eval()函数是括号内的内容按照命令行执行,

% 即eval(['a','=''2','+','3',';'])实质为a = 2 + 3;

% 注意2:由于K_Trace是元胞数组格式,需要加{1,1}才能得到字符串

end

在实际的处理过程中,一般不会将所有数据全部输出,通常是一个循环得到一个结果,只输出结果信息。

作为学习中的一份记录,仅供参考~~~~

你可能感兴趣的:(matlab读取文件夹下所有文件的字符串,MATLAB读取文件夹下所有文件的文件名并读取数据...)