有些必要的文件量比较大的时候,可以试着在本地放一个数据库,关于在iOS上对数据库的操作可选择使用FMDB
首先是读取我们的SQL文件
+(NSString *)getTextFileContents{
NSString *filePath = [[NSBundle mainBundle ] pathForResource:@"文件名.sql" ofType:nil];
NSError *error;
NSString *textFileContents = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:&error];
return textFileContents;
}
因为后台的sql语句都是用;号结尾,所以可以将文件里的sql语句放到一个数组里,方便调用
NSArray *sqlList = [[AddressListModel getTextFileContents] componentsSeparatedByString:@";"];
最后就是使用FMDB部分的内容了
FMDatabaseQueue *queue = [FMDatabaseQueue databaseQueueWithPath:[AddressListModel getPath]];
[queue inDatabase:^(FMDatabase *db) {
NSArray *array = [[AddressListModel getTextFileContents] componentsSeparatedByString:@";"];
if ([db open]) {
for (NSString *str in array) {
BOOL res = [db executeUpdate:str];
if(!res) {
NSLog(@"error when creating db table");
}else {
NSLog(@"执行成功");
}
}
}else{
NSLog(@"数据库未打开");
} }];
当你看到打印执行成功时,数据以及存到数据库了