2009-09-30 30 views
7

Tengo un archivo CSV que contiene datos. Quiero cargarlo en un db sqlite administrado de Core Data.Cargando un archivo CSV en Core Data managed sqlite db

Acabo de ejecutar una de las aplicaciones Core Xcode de ejemplo de muestra y noté que creaba el archivo db. Noté que todos los nombres de las tablas comenzaban con Z y las claves principales se almacenaban en una tabla separada, así que a partir de esto estoy en lo cierto al suponer que solo importar los datos CSV directamente a la línea de comandos db usando sqlite3 podría dañar las claves principales.

Necesito escribir un programa para leer en el CSV línea por línea y luego crear objetos para cada fila y persistirlos a la base de datos. ¿Alguien tiene algún código para esto? Y puedo escribir un cliente de escritorio para hacer esto usando Core Data. De ser así, ¿estará bien el DB para usar en la aplicación de datos centrales de iPhone?

¿Puedo simplemente incluir el db prellenado en mi proyecto y se implementará con la aplicación correctamente o hay algo más que debería hacer?

Respuesta

6

Utilice NSScanner para leer su archivo CSV en las instancias NSManagedObject en su almacén de datos centrales.

+0

creo que enlazan informados para NSScanner ya no funciona:/ – Chris

+0

he añadido un enlace viven actualmente. –

5

Tengo algunas categorías en NSString para leer y escribir archivos CSV desde/hasta NSArrays. Los publicaré en línea y editare mi respuesta con un enlace.

edición

Están en línea aquí: http://github.com/davedelong/CHCSVParser

+0

Impresionante, muchas gracias por esto, Dave! –