2012-07-12 47 views
0

我已经创建了一个包含我应用程序数据的sqlite数据库,并将它拖入Xcode中的支持文件组中。resourcePath不工作Xcode

当我尝试使用访问它:

NSString *bundlePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"database.db"];

它不读取文件。但是,如果我把完整的文件路径:

NSString *bundlePath = @"Users/xxxx/Apps/App/database.db";

的应用程序工作正常。


我打印出来的文件路径:

NSString *bundlePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"database.db"];

,它是:

/Users/xxx/Library/Application Support/iPhone Simulator/5.1/Applications/EE614EFA-BAF9-478E-xxxx-xxxx/App.app/database.db

任何想法,为什么?

回答

1

处理路径的最好方法是让API处理有关将东西“附加”到路径字符串的详细信息。

NSString *path = [[NSBundle mainBundle] pathForResource:@"database" 
               ofType:@"db"]; 
+0

当我尝试,路径评估为零。 – 2012-07-12 07:43:40

+0

在Xcode Project Navigator(左侧)中选择该文件,并确保在File Inspector(右侧)的“目标成员”下选中了目标。 - 再次检查文件名称的拼写。 – Mundi 2012-07-12 07:45:47

+0

谢谢让它工作的人。 – 2012-07-12 07:47:41

1

的NSString *路径= [[一个NSBundle mainBundle] pathForResource:@ “数据库” ofType:@ “SQLite的”];