我需要两种方法:一种用于了解文件是否隐藏,另一种用于将文件设置为隐藏。我没有在开发者文档中得到答案...
有人吗?
非常感谢 !杰罗姆
以“.”开头的文件 默认情况下将隐藏在 Finder 中,因此您可以测试文件是否以点开头,例如:
NSString* filename = //Something
if([string hasPrefix:@"."]) {
//The file is hidden
}
要使文件不可见,您可以重命名文件,并在名称前加上句点。
您可以使用NSFileManager
列出目录中的文件。
NSURL *directoryURL = [NSURL fileURLWithPath:(NSString*)path];
NSArray *filteredContents = [[NSFileManager defaultManager] contentsOfDirectoryAtURL:directoryURL
includingPropertiesForKeys:[NSArray arrayWithObject:NSURLNameKey]
options:NSDirectoryEnumerationSkipsHiddenFiles
error:nil];
指定NSDirectoryEnumerationSkipsHiddenFiles
选项后,它将跳过目录中的所有隐藏文件。然后,您可以执行类似的方法,即返回目录中的所有文件。
NSArray *allContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:(NSString *path) error:nil];
任何allContents
不在其中的文件都filteredContents
可能是隐藏文件。