2009-09-30 85 views
7

我有一個包含數據的CSV文件。 我想將它加載到Core Data託管的sqlite數據庫中。將CSV加載到核心數據中託管的sqlite db

我剛剛運行了一個示例Core Data Xcode應用程序,並注意到它創建了db文件。 我注意到表名都以Z開頭,主鍵被存儲在單獨的表中,所以從這我是正確的假設只是將CSV數據直接導入數據庫使用sqlite3命令行可能會混淆主鍵。

是否需要編寫一個程序來逐行讀取CSV,然後爲每行創建對象並將它們保存到數據庫。 任何人都有這樣的代碼? 我可以寫一個桌面客戶端來使用核心數據來做到這一點。如果是的話,分貝可以在iPhone核心數據應用中使用嗎?

然後我可以在我的項目中只包含預先填充的數據庫,它將與應用程序正確部署或有其他事情我應該做。

回答

6

使用NSScanner將您的CSV文件讀取到Core Data存儲中的NSManagedObject實例中。

+0

我想你張貼NSScanner該鏈接不工作了:/ – Chris 2015-11-10 20:05:34

+0

我加了目前居住的鏈接。 – 2015-11-10 20:07:45

5

我在NSString上有一些類別用於讀取和寫入NSArrays中的CSV文件。我會在網上發佈他們,並通過鏈接編輯我的答案。

編輯

他們在這裏在線是:http://github.com/davedelong/CHCSVParser

+0

太棒了,非常感謝Dave! – 2011-04-26 09:51:37