2010-11-15 62 views
2

我正在用MacFUSE玩转,它非常整洁。 (我正在使用Objective-C API。)MacFUSE文件系统可以支持“虚拟”目录吗?

我目前正在尝试构建一个文件系统,允许通过标记对文件进行分类。也就是说,我会采用一个扁平结构的目录(并且可能有很多文件),并且将文件移动到目录中实际上只是附加一个标签(而不实际移动它)。进入这个目录时,你会看到所有具有该标签的文件。你也可以进一步移动到子目录中,这将产生只有所有标签的文件。

问题是可能有很多标签,而且我真的不喜欢列出标签的“假”目录(特别是因为它也意味着我需要为它们提供属性)。但是,打开contentsOfDirectoryAtPath:error未列出的文件或目录似乎是不可能的。

我错过了一些方便的委托方法,还是我真的不得不列出标签目录?

回答

1

原来,MacFuse真正想要的是文件夹的属性,我的attributesOfItemAtPath:(NSString *)path userData:(id)userData error:(NSError **)error没有给他们任何。

为文件夹赋予唯一的必需属性(NSFileTypeNSDirectoryFileType)似乎“足够好”。也就是说,这些文件夹的存在状态相当脆弱(Finder中的轶事变体导致文件夹“消失”,并且窗口回退到文件系统根目录),但在终端中它起作用。