我想从matlab中的目录中读取文件。然后我需要检查它是文件还是目录,然后进行处理。有人可以为我提供代码片段吗?或者请建议一个链接来做到这一点?
答案 0 :(得分:4)
函数DIR返回一个结构数组,每个元素对应一个目录。其中一个结构成员是一个名为isdir
的标志。
mydir = 'c:\test';
allentries = dir(mydir); % array of all files and dirs within target
diridxs = [allentries.isdir];
alldirs = allentries(diridxs); % array of all the dirs
allfiles = allentries(~diridxs); % array of all the files
for ctr = 1:length(allfiles)
disp(allfiles(i).name)
请注意,目录条目包括.
和..
,当您尝试递归解析目录树时,这可能会造成混淆......
答案 1 :(得分:4)
我写了一篇博客,至少解决了部分问题:http://blogs.mathworks.com/loren/2006/08/02/processing-a-set-of-files/
- 洛伦
答案 2 :(得分:1)
也许看看MathWorks网站,他们总是有一些很好的例子和有用的评论。 例如: