Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
高级会员
注册日期: 2019-11-21
帖子: 3,006
声望力: 66 ![]() |
![]()
我想做两件事:
现在,我正在尝试: dirnames = dir(image_dir); 但我认为那会返回对象列表。 size(dirnames)返回属性的数量, dirnames.name仅返回第一个目录的名称。 回答: 函数DIR实际上返回一个结构数组 ,其中给定目录中的每个文件或子目录具有一个结构元素。当从结构数组中获取数据时 ,使用点符号访问字段将返回以逗号分隔的字段值列表 ,每个结构元素一个值。将该逗号分隔的列表放在方括号[]中,可以将其收集到向量中 ;也可以通过将其放在花括号{} ,将其存储在单元格数组中。 我通常喜欢通过使用逻辑索引来获得目录中文件或子目录名称的列表,如下所示: dirInfo = dir(image_dir); %# Get structure of directory information isDir = [dirInfo.isdir]; %# A logical index the length of the %# structure array that is true for %# structure elements that are %# directories and false otherwise dirNames = {dirInfo(isDir).name}; %# A cell array of directory names fileNames = {dirInfo(~isDir).name}; %# A cell array of file names 更多&回答... |
![]() |
![]() |