我正在尝试在macOS上查看以我的文档包bundle开头的所有子目录,但是我只能让NSMetadataQuery报告用于作用域的直接目录中的文件。它不进行递归搜索。
我正在尝试查看我的文件包(NSFileWrapper *)中包含的文件列表及其下载状态,该文件包存储在iCloud Drive(或本地FS的任何位置)上,但我只能获取NSMetadataQuery来返回文件直接在作为范围传递的目录中。它没有进行递归搜索。
这是我唯一可以工作的事情:
_query = [[NSMetadataQuery alloc] init];
NSString *root = [_DocRoot path];
[_query setSearchScopes:[NSArray arrayWithObject:root]]; // /Users/patrick/MyFDPackageBundles
[_query setPredicate:[NSPredicate predicateWithFormat:@"%K LIKE '*.fd'", NSMetadataItemFSNameKey]];
当搜索范围是iCloud容器时,以下正确列出macOS和iOS上子目录中的文件,但在MacOS上的任意文件夹上运行时,不返回任何内容:
[NSPredicate predicateWithFormat:@"%K LIKE '*'", NSMetadataItemFSNameKey]
有谁知道如何查询文件系统上文件夹中的所有文件?苹果文档说要使用" NSMetadataItemFSNameKey == *"但这引发了异常。
谢谢!