Realm ファイルとの連携 - Swift SDK
Realmは、Realm 内のデータを整理するために使用される主要データ構造です。 Realm は、アプリケーション内で使用するオブジェクト(Realm オブジェクトと呼ばれる)と、オブジェクトを記述する追加のメタデータのコレクションです。 Realm オブジェクトを定義する方法については、「オブジェクトモデルの定義 」を参照してください。
Realm ファイル
Realm は、Realm 内のすべてのオブジェクトとタイプのバイナリ エンコード バージョンを単一の .realm
ファイルに保存します。 ファイルは、Realm を開くときに定義できる特定のパスにあります。 Realm Studio を使用すると、これらのファイルの内容を開いて表示、編集できます。
インメモリ Realm
また、Realm を完全にメモリ内で開くこともできます。この場合、 .realm
ファイルやそれに関連する予備ファイルは作成されません。 代わりに、SDK は Realm が開いている間にオブジェクトをメモリに保存し、すべての インスタンスが閉じられるとすぐにそれらを破棄します。
デフォルトRealm
Realm()またはRMRealmを呼び出すと、デフォルトの Realm が開きます。 このメソッドは、 default.realm
という名前のファイルにマップする Realm オブジェクトを返します。 このファイルはあります。
iOS: アプリのドキュメントフォルダー内
macOS: アプリのアプリケーション サポート フォルダー内
Tip
「デフォルトの Realm のオープン」を参照してください
デフォルトの Realm を開くには、「 デフォルトの Realm または ファイル URL で Realm を開く 」を参照してください。
予備 Realm ファイル
Realm は、次のように Realm ごとに追加のファイルを作成します。
Realm ファイルの拡張子は「realm」。例:
default.realm
: オブジェクト データが含まれています。ロックファイル、"lock" の拡張子を持つファイル。例:
default.realm.lock
: Realm 内のどのバージョンのデータがアクティブに使用されているかを追跡する。 これにより、クライアント アプリケーションによってまだ使用されているストレージ領域が Realm により再利用されるのを防止します。メモ ファイルの拡張子は "note" で、例:
default.realm.note
: スレッド間通知とプロセス間通知を有効にします。管理ファイル、"management" で呼び出されるファイル。例:
default.realm.management
: 内部状態マネジメント。
これらのファイルの削除は重要な影響を与えます。 For more information about deleting .realm
or auxiliary files, see: Delete a Realm
Realm ファイル パスの検索
Realm ファイルは、Realm を開くときに任意で定義できる特定のパスに配置されます。
// Get on-disk location of the default Realm let realm = try! Realm() print("Realm is located at:", realm.configuration.fileURL!)