我想打开一个database.sqlite3。首先,我需要一条路。但我不知道如何走这条道路。
我需要一条相对路径。
编辑: 我不想使用NSBundle。它走的路很长。
我想使用/Users/Voloda2/Projects/facebook/database.sqlite3是否可以获得相对路径?
EDIT2: 我经常更改数据库。我使用Navicat进行此操作。如果我使用NSBundle,我有一个问题。 git没有索引我的数据库,因为它不在项目文件夹中。因此,我需要将我的数据库放在项目文件夹中。
直路是/Users/Voloda2/Projects/facebook/database.sqlite3
这样的相对路径../ database.sqlite3
相对路径是相对于项目文件夹的路径。 是否有可能获得相对路径?可能是不可能的。
答案 0 :(得分:3)
假设您正在制作常规的OS X / Cocoa应用程序,Xcode会将数据库文件复制到应用程序包中。因此,您可以使用NSBundle
类轻松获取其路径:
NSString *databasePath = [[NSBundle mainBundle] pathForResource:@"database" ofType:@"sqlite3"];