列出文件夹中的子文件夹 - Matlab(仅子文件夹,不是文件)

标签 list matlab directory dir

我需要使用 Matlab 列出文件夹内的子文件夹。如果我使用

nameFolds = dir(pathFolder), 

我得到 ... + 子文件夹名称。然后我必须运行 nameFolds(1) = [] 两次。有没有更好的方法来使用 Matlab 获取子文件夹名称?谢谢。

最佳答案

使用dir输出的isdir字段来分隔子目录和文件:

d = dir(pathFolder);
isub = [d(:).isdir]; %# returns logical vector
nameFolds = {d(isub).name}';

然后您可以删除 ...

nameFolds(ismember(nameFolds,{'.','..'})) = [];

您不应该执行 nameFolds(1:2) = [],因为根目录的 dir 输出不包含那些点文件夹。至少在 Windows 上是这样。

关于列出文件夹中的子文件夹 - Matlab(仅子文件夹,不是文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8748976/

相关文章:

matlab - 制作静态图例,独立于实际剧情

c++ - opencv有类似matlab中size和bwperim的功能吗?

matlab - 在子图中对齐 ylabel

linux - 枚举 389/Fedora 目录服务器的客户端

c - 如何将代码应用于文件夹中的所有文件?

ios - 在 Swift 中打开我的 iOS 应用程序的文档目录

python - 整数列表中的最大距离

Python 列表切片效率

python - 如何检查列表的元素是否连续

list - 如果匹配字符串,则查找和删除列表元素