2

我的问题是如何使用 MATLAB 在文件夹中搜索某种类型的文件。我举一个例子来详细说明我的问题:

假设我们有以下文件夹以及其中的文件:

My_folder
    Sub_folder1
        Sub_sub_folder1
              a.txt
        1.txt
        2.txt
    Sub_folder2
        3.txt
    abc.txt

在此示例中,我想查找其中的所有.txt文件My_folder及其子文件夹。我想知道我可以用 MATLAB 做什么。谢谢!

4

3 回答 3

5

据我所知,Matlab 没有执行递归目录搜索的内置函数,但是在 Matlab Central 上有几个可供下载:herehere

或者,您可以编写自己的递归函数并使用该dir函数在每个级别搜索与您的条件或其他目录匹配的文件以递归到。

于 2013-04-26T08:59:53.247 回答
1

我同意 Matlab Central 选项——当 MLC 不是一个选项(没有网络或客户计算机等)时我使用的另一种方法是快速而肮脏的 dos 命令:

dos(['dir /s/b ' mywildcard])  

/s 将对您指定的任何通配符进行递归目录搜索,而 /b 将使您只获得文件名(完整的将是完整路径,但没有标题、文件大小等)。

这显然是平台相关的,因此主要用于当您被迫在没有积累的“标准”实用程序集的情况下工作。

于 2013-04-26T10:52:06.767 回答
0

即使答案已被接受,我还是想指出 Matlab 的dir函数。
此内置函数返回相关文件夹的内容。此外,它指示哪些内容是它自己的文件夹。因此,通过一个小循环,也可以使用此功能来搜索子目录。

于 2013-04-26T14:17:15.807 回答