我自己建立数据库,在mac上面用模拟器测试的时候可以直接将数据库拷贝到document文件夹下,通过-(NSString *)dataFilePath{ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return [documentsDirectory stringByAppendingPathComponent:kFilename];}方法找到,但是我联机到真机上面测试的时候就找不到了,我在iphone上面测试的时候应该把数据库放在项目文件夹的什么地方啊,因为是客户自己下载的,我希望能项目到iphone上面运行的时候就能连接数据库,因为数据库里面的数据有很多条,所以不能下载和自己创建,就自己放在项目文件夹下怎么能让程序正常使用,很急,希望各位多多照顾!!
NSString *documentsDirectory = [paths objectAtIndex:0];
return [documentsDirectory stringByAppendingPathComponent:kFilename];}方法找到,但是我联机到真机上面测试的时候就找不到了,我在iphone上面测试的时候应该把数据库放在项目文件夹的什么地方啊,因为是客户自己下载的,我希望能项目到iphone上面运行的时候就能连接数据库,因为数据库里面的数据有很多条,所以不能下载和自己创建,就自己放在项目文件夹下怎么能让程序正常使用,很急,希望各位多多照顾!!
if (![[NSFileManager defaultManager] fileExistsAtPath:localDBPath]) {
NSString *bundleDBPath = [[NSBundle mainBundle] pathForResource:@"XX" ofType:@"db"];
[[NSFileManager defaultManager] copyItemAtPath:bundleDBPath toPath:localDBPath error:nil];
}
就把[NSBundle mainBundle]也就是app程序包里的文件拷贝到document下要事先把数据文件加载到资源里!生成程序包的时候就打包到里面了这段代码在你读取数据库数据之前执行就可以,随便放都可以
沙盒中的Documents 没有什么限制啊
我都是这么用的。