2010-06-09 38 views

回答

1

最好的答案是创建一个命令行核心数据应用程序,加载这些plist文件并保存sqlite文件。然后,您可以采取该sqlite文件并将其包含在您的iPhone应用程序中。

Core Data生成的sqlite应该被视为一个黑盒子,因此只能由Core Data编辑。编写核心数据命令行应用程序要容易得多,然后尝试对核心数据存储进行反向工程,再加上您未来的证明,而在核心数据之外设计自己的sqlite文件将在某些时候中断。

+0

我今天看了你的书,我很自豪,你让我陷入了3年前我脑海中所遇到的一个问题。你很谦虚,谢谢。 – thndrkiss 2014-02-03 07:29:45

1

如果您能够使用shell脚本执行此操作,则可以将该脚本添加到xcode中的构建阶段。 你可以通过PlistBuddy的命令行来处理plists,当然还有一些sqlite的命令行工具,所以它应该是可行的。

+0

你能找到这方面的例子吗? – thndrkiss 2010-06-09 09:50:04

+0

我不是shell脚本专家。这里http://macscripter.net/viewtopic.php?id=18380有一些plistbuddy用法的例子(它是applescript,但它启动shell命令来操纵plists)。 当你获得你需要的值时,你可以回显一些INSERT查询到.sql文件,然后将命令文件送到sqlite可执行文件来创建数据库。 – garph0 2010-06-09 10:15:05

相关问题