2015-07-12 135 views
0

我在我的iOS應用程序中使用sqlite。我想導出這個數據庫,並把它放在一個集中的數據庫。如何導出sqlite數據庫?我正在使用sqlite.swift。謝謝!將sqlite數據庫導出爲csv - Sqlite.swift

+0

可能的重複[如何轉儲某些SQLite3表的數據?](http://stackoverflow.com/questions/75675/how-do-i-dump -sqlite3-表的數據) – beresfordt

+0

它不是重複的因爲我需要在應用程序中做它。 – tryinghardladyprogrammer

+0

oooh snap! ; 3所以你只是想完成上面顯示的@beresfordt所做的重複操作,但是將這個文件保存在應用程序的文檔文件夾中? – ErickES7

回答

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]; 


} 

example

這行代碼,NSArray *arrayContents = [self SQL_returnContentsOfTable];,返回SQL表的內容。​​是用於填充此數組的查詢,arrayContents

+0

如果你想要任何解釋,因爲我剛剛複製粘貼我的代碼,請我很樂意幫助:) – ErickES7