Unity SDKのTipsです。ファイルストアでファイル名検索をする方法を紹介します。
結論
NCMBFile.GetQuery()
を使いましょう。
クエリを取り出す
ファイルストアを検索するクエリは NCMBFile.GetQuery()
で取得できます。
NCMBQuery<NCMBFile> query = NCMBFile.GetQuery();
ファイル名で検索する
ファイル名検索をする際には、正規表現検索を使いましょう。LIKE検索のようなものはないので、注意してください。以下は.pngで終わるファイルの検索です。検索対象のフィールド名はfileNameとします。
Hashtable where = new Hashtable(); where.Add("$regex", ".*\\.png$"); query.WhereEqualTo("fileName", where);
検索を実行する
検索を実行して、それらのファイル名を表示する際のコードです。
IList<NCMBFile> results = await query.FindTaskAsync(); Debug.Log(results.Count); foreach (NCMBFile file in results) { Debug.Log(file["fileName"]); }
ファイル内容の取得は FetchAsync
や FetchTaskAsync
を利用してください。
NCMB Unity SDK Library Project: NCMB.NCMBFile クラス
まとめ
あらかじめ登録しているアセットであれば固定名称でもいいですが、ユーザがアップロードしたものだったり、可変な場合は検索を使う方が良いでしょう。皆さんのアプリ開発に役立ててください。