有没有办法列出我在 iCloud(来自 Mac)中的所有文件(文档+数据)?我相信 NSMetadataQuery 对象可以帮助我,但是那里有示例代码吗?
谢谢 !
这里有一些示例代码可以查询 iCloud 文件夹中的 txt 文件。如果要查找其他文件,只需替换谓词 ( NSPredicate *pred = [NSPredicate predicateWithFormat:@"%K ENDSWITH '.txt'", NSMetadataItemFSNameKey];
)。
要列出所有文件,您可以简单地做,@"NOT %K.pathExtension = '.'"
但我不确定这是否是最优雅的方法。欢迎提出建议。
查看这篇文章以获取上下文和完整的代码示例。这只是查找文件的方法。
-(void)loadDocument {
// (2) iCloud query: Looks if there are txt files in the cloud
NSMetadataQuery *query = [[NSMetadataQuery alloc] init];
_query = query;
//SCOPE
[query setSearchScopes:[NSArray arrayWithObject:NSMetadataQueryUbiquitousDocumentsScope]];
//PREDICATE
NSPredicate *pred = [NSPredicate predicateWithFormat:@"%K ENDSWITH '.txt'", NSMetadataItemFSNameKey];
[query setPredicate:pred];
//FINISHED?
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryDidFinishGathering:) name:NSMetadataQueryDidFinishGatheringNotification object:query];
[query startQuery];
}