我在玩MacFUSE,它很整洁。(我正在使用Objective-C API。)
我目前正在尝试建立一个文件系统,允许文件按标签分类。也就是说,我会选择一个具有平面结构的目录(可能还有很多文件),将一个文件移动到一个目录中实际上只是将一个标记附加到它(而不是实际移动它)。进入此目录时,您将看到所有具有该标记的文件。您还可以进一步移入子目录,这样只会产生具有所有标记的文件。
问题是可能有很多标记,我不喜欢列出标记的“假”目录(特别是因为它还意味着我需要为它们提供属性)。但是,似乎不可能打开未列出的文件或目录 contentsOfDirectoryAtPath:error .
contentsOfDirectoryAtPath:error
我是否缺少一些方便的委托方法,或者我真的必须列出标记目录吗?
结果发现MacFuse真正想要的是文件夹的属性 attributesOfItemAtPath:(NSString *)path userData:(id)userData error:(NSError **)error 没有给他们。
attributesOfItemAtPath:(NSString *)path userData:(id)userData error:(NSError **)error
为文件夹提供唯一的强制属性( NSFileType : NSDirectoryFileType )似乎工作得“很好”。也就是说,文件夹有一个相当弱的存在状态(查找器中的轶事变化导致文件夹“消失”和窗口返回到文件系统根),但是在终端中它工作。
NSFileType
NSDirectoryFileType