1

フォルダーを作成し、テキスト ファイルをそのフォルダーにCloud保存する必要があります。.txt

だから私は次のコードでフォルダを作成しましたAppDelegate

NSURL *ubiq = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
    NSError *error = nil;

    if(ubiq)
    {
        NSFileManager *fm = [NSFileManager defaultManager];
        NSURL *rootURL = [fm URLForUbiquityContainerIdentifier:nil];
        NSURL *newFolder = [NSURL URLWithString:@"Notes" relativeToURL:rootURL];

        [fm createDirectoryAtURL:newFolder withIntermediateDirectories:YES attributes:nil error:&error];

        if(error)
        {
            NSLog(@"Error");
        }

        else
        {
            NSLog(@"NO Error");
        }
    }

テストした後、エラーは表示されません。だから私はそれがiCloudにメモフォルダを作成したと仮定しました。

ただし、次のコードを使用してテキストドキュメントをそのフォルダーに保存すると、エラーが表示されて保存されません。

NSString *file = [NSString stringWithFormat:@"%@.txt",fileName];

    NSURL *ubiq = [[NSFileManager defaultManager]
                   URLForUbiquityContainerIdentifier:nil];
    NSURL *ubiquitousPackage =
    [[[ubiq URLByAppendingPathComponent:@"Documents"] URLByAppendingPathComponent:@"Notes"]
     URLByAppendingPathComponent:file];

    Note *doc = [[Note alloc] initWithFileURL:ubiquitousPackage];

    [doc saveToURL:[doc fileURL] forSaveOperation:UIDocumentSaveForCreating completionHandler:^(BOOL success) {
        if (!success)
        {
            NSLog(@"Error");
        }

        else
        {
            doc.noteContent = self.txtView.text;
            [doc updateChangeCount:UIDocumentChangeDone];
        }
    }];

そして、エラーメッセージは

Foundation called mkdir("/private/var/mobile/Library/Mobile Documents/35QNLTQU29~com~myapp~iCloudTest/Documents/Notes/(A Document Being Saved By iCloudTest)"), it didn't return 0, and errno was set to 2.

どうすれば解決できますか?

4

0 に答える 0