0

iOS アプリケーションで sqlite を使用しています。このデータベースをエクスポートして、集中型データベースに配置したいと思います。sqlite db をエクスポートするには? 私はsqlite.swiftを使用しています。ありがとう!

4

1 に答える 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 に答える