Когда я использую для работы с основными данными, я часто использую этот код, чтобы показать мне путь к .sqlite базы данных:Пути к базе данных Ядра с Magical записью
NSLog(@"%@ path-core",[[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]);
Однако, когда я добавить Magical записи в мой проект , я использовал вместо этого:
NSLog(@"magical record path to SQLite base %@", [NSPersistentStore MR_defaultLocalStoreUrl]);
Какой путь печати:
/Users/Necrosoft/Library/Developer/CoreSimulator/Devices/68A05D98-7949-4F90-BFB9-9C8A368F411B/data/Containers/Data/Application/7EC45D6A-B20E-4EC2-B657-1425F714518F/Library/Application%20Support/MyApp/CoreDataStore.sqlite
Но я не могу найти CoreDataStore.sqlite. Когда я пытаюсь «перейти к» с помощью finder, я просто нахожу пустую папку. Но я думаю, что здесь есть .sqlite db. Итак, как я могу получить к нему доступ?
ОБНОВЛЕНИЕ: В папке поддержки приложений есть фактические 4 элемента, но я вижу, что только 3, 1 отсутствует (скрывается) - это тот, который мне нужен. Как его получить?
это может помочь вам, но это в быстрой HTTP: //stackoverflow.com/questions/25434354/nslogging-println-sqlite-db-file-location-in-swift/40325883#40325883 –
Посмотрите, как сконструирован 'MR_defaultLocalStoreUrl' в коде: с' MR_directory: NSApplicationSupportDirectory' не 'NSDocumentDirectory ', которые могут быть ru в пути '/ Library/Application% 20Support'. Просто следуйте этой логике. Он добавляет также имя приложения '[[[[NSBundle mainBundle] infoDictionary] valueForKey: (NSString *) kCFBundleNameKey];'. Источник: https://github.com/magicalpanda/MagicalRecord/blob/master/MagicalRecord/Categories/NSPersistentStore%2BMagicalRecord.m – Larme
@ Larme так как я могу получить доступ к этому файлу? .. –