我的问题是如何使用MATLAB搜索文件夹中的某种类型的文件。我举一个例子详细说明我的问题:
假设我们有以下文件夹及其中的文件:
My_folder
Sub_folder1
Sub_sub_folder1
a.txt
1.txt
2.txt
Sub_folder2
3.txt
abc.txt
在此示例中,我想查找.txt
中的所有My_folder
文件及其子文件夹。我想知道我能用MATLAB做些什么。谢谢!
答案 0 :(得分:5)
据我所知,Matlab没有内置函数来进行递归目录搜索,但是有一些可以在Matlab Central上下载:here和here。
或者,您可以编写自己的递归函数,并使用dir
函数在每个级别搜索与您的criterea或其他目录匹配的文件以进行递归。
答案 1 :(得分:1)
我同意Matlab Central选项 - 当MLC不是一个选项(没有网络或客户计算机等)时,我使用的另一种方法是快速和脏的dos命令:
dos(['dir /s/b ' mywildcard])
/ s将对您指定的任何通配符执行递归目录搜索,并且/ b将对其进行搜索,以便您只获取文件名(完整将是完整路径,但没有标题,文件大小等)。
这显然取决于平台,所以主要用于没有你积累的“标准”实用工具时被迫工作的情况。
答案 2 :(得分:0)
即使答案已经被接受,我想指出Matlab的dir功能 此内置函数返回相关文件夹的内容。此外,它指示哪个内容是它自己的文件夹。因此,使用一个小循环,也可以使用此函数来搜索子目录。