2

(Mac から) iCloud にあるすべてのファイル (ドキュメント + データ) を一覧表示する方法はありますか? NSMetadataQuery オブジェクトがその助けになると思いますが、サンプル コードはありますか?

ありがとう !

4

1 に答える 1

6

ここでは、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];

}
于 2011-10-27T09:58:15.227 に答える