У меня есть около 60 изображений, которые я хочу сохранить в Core Data, 30 из которых являются аватарами и имеют префикс avt_filename_00X.png, а 30 из них меньше и имеют другой префикс.
Вместо того, чтобы хранить все изображения как большие двоичные объекты в Core Data / SQLite, Я хочу сохранить пути для каждого найденного изображения (точно так же, как вы сохраняете пути к изображениям для базы данных MySQL).
Однако я не уверен, как получить путь к изображению, найденный в NSBundle.
Я могу получить путь к NSDocumentDirectory через:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSFileManager *fileManager = [NSFileManager defaultManager];
[fileManager fileExistsAtPath:documentsDirectory];
NSLog(@"documentsDirectory = %@", documentsDirectory);
И я могу загрузить изображение и добавить его в массив.
if (qty == 0)
{
//NSLog(@"fileToLoad = %@", fileToLoad);
UIImage *img = [[UIImage alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:fileToLoad ofType:fileExt]];
[self.avtList addObject:img];
[img release];
} else {
// load multiple image into an array
// not coded yet
}
Но я не уверен в следующем:
Как мне получить путь, в котором компьютер нашел изображение, как только оно попало в NSBundle?
Как я могу быть уверенным, что путь будет работать, когда приложение находится на устройстве?
Идея состоит в том, чтобы получить все изображения, хранящиеся в массиве, а затем нажать их в Core Data / SQLite позже.