gpt4 book ai didi

matlab - 调用MATLAB的dir函数后如何过滤隐藏文件

转载 作者:太空宇宙 更新时间:2023-11-03 19:51:08 24 4
gpt4 key购买 nike

使用 MATLAB,我需要从目录中提取一组“有效”文件。所谓有效,是指它们不能是目录,也不能是隐藏文件。过滤掉目录非常简单,因为 dir 返回的结构有一个名为 isDir 的字段。但是,我还需要过滤掉 MacOSX Windows 可能放入目录中的隐藏文件。最简单的跨平台方法是什么?我真的不明白隐藏文件是如何工作的。

最佳答案

你可以结合DIRFILEATTRIB检查隐藏文件。

folder = uigetdir('please choose directory');
fileList = dir(folder);

%# remove all folders
isBadFile = cat(1,fileList.isdir); %# all directories are bad

%# loop to identify hidden files
for iFile = find(~isBadFile)' %'# loop only non-dirs
%# on OSX, hidden files start with a dot
isBadFile(iFile) = strcmp(fileList(iFile).name(1),'.');
if ~isBadFile(iFile) && ispc
%# check for hidden Windows files - only works on Windows
[~,stats] = fileattrib(fullfile(folder,fileList(iFile).name));
if stats.hidden
isBadFile(iFile) = true;
end
end
end

%# remove bad files
fileList(isBadFile) = [];

关于matlab - 调用MATLAB的dir函数后如何过滤隐藏文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5234341/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com