Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/111.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 从iCloud打开txt文件_Ios_Icloud_Uidocument - Fatal编程技术网

Ios 从iCloud打开txt文件

Ios 从iCloud打开txt文件,ios,icloud,uidocument,Ios,Icloud,Uidocument,在我的应用程序中,我尝试做一件简单的事情——将一个txt文件和一个图像文件保存到iCloud中,然后检索回来,在应用程序上打开它 现在,我可以将txt和图像文件保存到iCloud中-没问题。我甚至可以从iCloud中提取URL和文档的文件名,这也没问题。但我的问题是,如何打开txt文件?从iCloud打开txt文件并获取文本内容的示例代码是什么?如果有帮助的话,我的txt文件文档是UIDocument的一个子类 我注意到你问这个问题已经四个月了。也许这会对其他在这里寻找灵魂的人有所帮助 基本上,

在我的应用程序中,我尝试做一件简单的事情——将一个txt文件和一个图像文件保存到iCloud中,然后检索回来,在应用程序上打开它


现在,我可以将txt和图像文件保存到iCloud中-没问题。我甚至可以从iCloud中提取URL和文档的文件名,这也没问题。但我的问题是,如何打开txt文件?从iCloud打开txt文件并获取文本内容的示例代码是什么?如果有帮助的话,我的txt文件文档是UIDocument的一个子类

我注意到你问这个问题已经四个月了。也许这会对其他在这里寻找灵魂的人有所帮助

基本上,在iOS上,您首先通过查询所有文档打开UIDocument,然后通过打开iCloud响应您的内容。 以下是如何启动查询:

NSURL *baseURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
if (baseURL)
{
    _metadataQuery = [[NSMetadataQuery alloc] init];
    [_metadataQuery setSearchScopes:[NSArray arrayWithObject:NSMetadataQueryUbiquitousDocumentsScope]];

    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K like '*'", NSMetadataItemFSNameKey];
    [_metadataQuery setPredicate:predicate];

    CL_DLog(@"Start query - %d",[_metadataQuery startQuery]);
}
在执行上述代码之前,订阅这些通知以接收响应

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryDidFinish:) name:NSMetadataQueryDidFinishGatheringNotification object:_metadataQuery];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryDidFinish:) name:NSMetadataQueryDidUpdateNotification object:_metadataQuery];
然后,您可以在响应中打开文档

YourUIDocumentClassName*document=[[YourUIDocumentClassName alloc]initWithFileURL:documentURL]

if ([document documentState] != UIDocumentStateClosed)
{
    CL_DLog(@"FYI - metadata document state is not StateClosed.");
}

[document openWithCompletionHandler:^(BOOL success) {
....
你可以在icloud和UIDocument上查看苹果的会话

希望有帮助。

我想会有帮助的