将iOS应用创建的Core Data数据库加载到不同的XCode应用中

问题描述 投票:1回答:1

我以前创建了一个iOS应用,将数据保存到数据库。我已经从应用程序中复制了数据,现在有三个文件:

MyData.sqlite,MyData.sqlite-shm和MyData.sqlite-wal

我正在尝试在XCode中创建一个命令行实用程序,该实用程序将访问那些数据库中的数据。我已经将CoreData添加到命令行实用程序项目中,并且能够创建一个新数据库。我想要的是加载从应用程序导出的数据库。

我发现某人以前的问题:Migrate Core Data database from one app to another

但是,他们的回答对我不起作用。这行:

let storeUrl = FileManager.default.urls(for: .documentDirectory, in:.userDomainMask).first!.appendingPathComponent(databaseName + ".sqlite")

给出此错误:

expression produced error: error: /var/folders/cc/r_54b90515v_m6t41vg9lg000000gp/T/expr14-6084fa..swift:1:65: error: use of undeclared type 'Foundation'
Swift._DebuggerSupport.stringForPrintObject(Swift.UnsafePointer<Foundation.URL>(bitPattern: 0x1004fc2f0)!.pointee)

我觉得我一定缺少这个问题的简单答案。是否有一种简单的方法将Core Data数据库信息从一个应用程序移植到另一个应用程序?

ios swift xcode core-data core-data-migration
1个回答
0
投票

此行:

let storeUrl = FileManager.default.urls(for: .documentDirectory, in:.userDomainMask).first!.appendingPathComponent(databaseName + ".sqlite")

不适用于命令行实用程序。适用于应用程序。

您将不得不以其他方式获得路径(命令行arg,硬代码,相对于实用程序等)

© www.soinside.com 2019 - 2024. All rights reserved.