Ich habe eine JSON-Datei. Die Größe beträgt etwa 20 MB.CoreData SQLite-Datei in NSBundle
Projekt 1. Also habe ich ein Projekt erstellt und Daten aus dieser JSON-Datei in Core Data importiert. Core Data erstellt die folgenden SQLite-Dateien, die gesamteDataList.sqlite, die gesamteDataList.sqlite-shm und die gesamteDataList.sqlite-wal. Es dauerte 10 Minuten, um den gesamten Inhalt von JSON in die Kerndaten und die einmalige Erstellung der Datei zu kopieren.
Jetzt in Project2. Ich habe alle drei Dateien in MainBundle kopiert. Ich muss .xcdatamodeld erstellen, als ob ich es direkt aus Project1 kopiere, es findet die .momd-Datei nicht.
NSURL *storeURL = [[NSBundle mainBundle] URLForResource:@"entireDataList" withExtension:@"sqlite"];
store =[[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedModel]];
NSError *error;
[store addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error];
So wird storeURL von NSBundle main ist ein zuverlässiger Ansatz, bei dem entireDataList.sqlite, entireDataList.sqlite-shm und entireDataList.sqlite-wal-Dateien gespeichert sind?
Im Allgemeinen sind sie in Dokumente Verzeichnis.
Also sollen diese Seeddaten die App starten, aber sie können dann vom Benutzer editiert und die Änderungen gespeichert werden? – Wain
Ja, es ist wie kein Benutzereintrag .. Ich c, wo Sie dies auch zeigen .. d. H. Ich kann lesen, aber nicht schreiben? – andyPaul