MATLAB:按扩展名从文件夹加载文件

MATLAB:按扩展名从文件夹加载文件,matlab,filesystems,Matlab,Filesystems,将具有相同扩展名的文件夹中的所有文件加载到MATLAB中的最简单方法是什么 我以前的解决方案: %%% Will load a file if its filename is provided %%% USAGE: (Best save data to a variable to work with it.) %%% >> x = loadwrapper('<file_name>') %%% ... and then use 'x' all the way you wan

将具有相同扩展名的文件夹中的所有文件加载到MATLAB中的最简单方法是什么

我以前的解决方案:

%%% Will load a file if its filename is provided
%%% USAGE: (Best save data to a variable to work with it.)
%%% >> x = loadwrapper('<file_name>')
%%% ... and then use 'x' all the way you want.
%%% <file_name> works with absolute and relative paths, too.

function [ loaded_data ] = loadwrapper( file_name )

    files = dir(file_name);
    loaded_data = load(files.name);

end

您可以使用
dir
获取所有需要的文件。然后,您可以使用for循环对它们进行迭代,并为每个循环调用
load
。例如,以下各项:

files = dir('C:\myfolder\*.txt');
for k = 1:length(files)
    load(files(k).name, '-ascii')
end

加载扩展名为“txt”的“C:\myfolder”中的所有文件。

如果要从目录导入所有函数,可以使用addpath:

在matlab中,您位于c:\matlab\work目录中,点击:

addpath directory_where_all_my_functions_are
要导入
c:\matlab\work\directory\u的所有函数,其中所有函数都是


help addpath
在matlab中查看更多信息

在使用时,如果您从文件夹调用此函数,而不是从
'c:\myfolder'
调用,并且
'c:\myfolder'
不在您的路径中,则必须使用
加载(fullfile('c:\myfolder',files(k.name),'-ascii')@Shai,你说得对。然而,我给出这个例子只是为了配合我的建议使用
dir
命令,而不是关于在MATLAB中使用文件的完整教程。
addpath directory_where_all_my_functions_are