我在我的 iOS 应用程序中使用 sqlite。我想导出这个数据库并将它放在一个集中的数据库中。如何导出 sqlite 数据库?我正在使用 sqlite.swift。谢谢!
问问题
1608 次
1 回答
0
以下只是代码的一部分。下面粘贴的是回答您的问题所需的内容:
- (NSString *)dataFilePathCustom:(NSString *)filename withExtension:(NSString *)ext {
NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES);
NSString *dictionaryDocuments = [paths objectAtIndex: 0];
return [dictionaryDocuments stringByAppendingPathComponent: [NSString stringWithFormat: @"%@.%@", filename, ext]];
}
- (void)SQL_ITEMS_voidExportCSVFormat {
NSString *string = @"\"CSV Export\"";
NSArray *arrayContents = [self SQL_returnContentsOfTable];
for (NSArray *arrayItem in arrayContents) {
string = [string stringByAppendingFormat: @"\r%d,\"%@\",%d", [arrayItem[0] intValue], arrayItem[1], [arrayItem[2] intValue]];
}
[string writeToFile: [self dataFilePathCustom: @"ExportFile" withExtension: @"csv"] atomically: YES encoding: NSUTF8StringEncoding error: nil];
}
- (void)viewDidLoad {
[self SQL_voidClearRowsFromTable];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"ONE", @25]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"TWO", @225]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"THREE", @21]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"FOUR", @55]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"FIVE", @56]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"SIX", @77]];
[self SQL_ITEMS_voidInsertRowWithArray: @[@"SEVEN", @25]];
[self SQL_ITEMS_voidExportCSVFormat];
}
这行代码,NSArray *arrayContents = [self SQL_returnContentsOfTable];
返回 SQL 表的内容。SELECT * FROM Items;
是用于填充此数组的查询,arrayContents
于 2015-07-14T21:16:47.090 回答