如何创建一个预先准备的数据库,然后将该数据加载到我的ios swift应用程序中?

Eri*_*ric 5 database realm ios swift

我在几个文本文件中有很多数据文本。如何使用这些文本文件中的数据有效地创建(Realm?)数据库,以便将数据库添加到Xcode项目并将数据加载到我的应用程序中?

我看过很多关于如何使用用户输入的数据创建Realm数据库然后进行加载的教程,但是没有关于预制数据库的教程。我不知道Realm是否是执行此操作的正确程序,但我看起来非常不错。我已经下载了Realm Browser,但是我只能查看数据库,无法找到如何轻松创建它们的方法。

编辑:

我设法在Realm中创建一个数据库并将其放在我的xcode文件夹中。然后我尝试像这样加载它,但是让人们不包含文件的数据,我缺少了什么:

let path = NSBundle.mainBundle().pathForResource("data", ofType: "realm")
var config = Realm.Configuration(fileURL: NSURL(fileURLWithPath: path!))
config.readOnly = true
let realm = try! Realm(configuration: config)

let peoples =  realm.objects(Data)
Run Code Online (Sandbox Code Playgroud)

数据是定义架构的类:

class Data : Object {
    dynamic var name  = ""
    dynamic var country = ""
    dynamic var discription = ""
    dynamic var image = ""
    dynamic var cartoon = ""
    dynamic var startYear = 0
    dynamic var endYear = 0
}
Run Code Online (Sandbox Code Playgroud)

我要加载的领域文件的图像: 在此处输入图片说明

感谢帮助!

Ami*_*ndi 1

Realm Browser(顾名思义)只是一个浏览器。

为了创建预先准备好的数据库,您应该编写一些代码,
创建空数据库并向其中插入数据,然后将其保存到模拟器的 Documents 文件夹中
,注释插入代码并从 Documents 文件夹中复制生成的数据库,并将其作为资源添加到您的 xCode 项目中。

如果您的数据库是静态的并且您不想更改其中的任何内容,只需使用资源包路径加载数据库即可:

[[NSBundle mainBundle] pathForResource:@"nameOfFile" ofType:@"realm"];
Run Code Online (Sandbox Code Playgroud)

但如果您想更改某些数据,则必须将其再次复制到可写文件夹,例如文档(仅限第一次)