如何導入CSV到源碼(對於iphopne核心數據)導入CSV到coredata SQLite,讓iphone
我已經使用SQLite經理試過,但它導入CSV文件中的新表,我也需要進口一些日期,
那麼如何將數據導入到我的sqlite數據庫?我有3個具有不同屬性的實體,並且在csv中我有一個csv中的所有值(所以我可以根據需要對其進行格式化或更改),但是如何重新定義它?
什麼是coredata喜歡的日期格式?
在此先感謝!
如何導入CSV到源碼(對於iphopne核心數據)導入CSV到coredata SQLite,讓iphone
我已經使用SQLite經理試過,但它導入CSV文件中的新表,我也需要進口一些日期,
那麼如何將數據導入到我的sqlite數據庫?我有3個具有不同屬性的實體,並且在csv中我有一個csv中的所有值(所以我可以根據需要對其進行格式化或更改),但是如何重新定義它?
什麼是coredata喜歡的日期格式?
在此先感謝!
我假設你有設置您的CoreData和一個運行良好。你並不想直接使用核心數據的sqlite數據庫。這是可能的,但也有點混亂。
核心數據喜歡NSDate。無論CSV文件在數據列中使用什麼,您最好將CSV值轉換爲NSDate。在您的應用程序中使用NSDate將減少以後的頭痛事件的數量。
我會建議,首先在應用程序中使用Core Data創建sqlite數據庫,然後使用由Core數據創建的數據庫導入csv數據。
您可以使用命令行命令在sqlite文件中導入數據。
將sqlite文件添加到項目中。
更換和添加persistentStoreCoordinator方法這裏面代碼..
NSString *storePath = [[self applicationDocumentsDirectory] stringByAppendingPathComponent: @"yourDatabase.sqlite"];
/*
Set up the store.
For the sake of illustration, provide a pre-populated default store.
*/
NSFileManager *fileManager = [NSFileManager defaultManager];
// If the expected store doesn’t exist, copy the default store.
if (![fileManager fileExistsAtPath:storePath]) {
NSString *defaultStorePath = [[NSBundle mainBundle] pathForResource:@"yourDatabase" ofType:@"sqlite"];
if (defaultStorePath) {
[fileManager copyItemAtPath:defaultStorePath toPath:storePath error:NULL];
}
}
更改方法
- (NSString *)applicationDocumentsDirectory {
return [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
}