скачать и сохранить изображение в корне - PullRequest
1 голос
/ 15 декабря 2010

Как мне загрузить и сохранить изображение в корень приложения, чтобы в основном я мог получить доступ к изображению через

[UIImage imageNamed:@"myimage.jpg"];

Спасибо

Mason

Ответы [ 2 ]

2 голосов
/ 15 декабря 2010

Сначала вам нужно получить данные изображения

NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://media03.linkedin.com/mpr/mpr/shrink_80_80/p/3/000/064/2e2/1bd3849.jpg"]];

Затем вам нужно записать данные в каталог документов

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *pathLD = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"imageLD%d.jpeg",[[NSDate date] timeIntervalSince1970]]]; 

NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath: pathLD]){
    [imageData writeToFile:pathLD atomically:YES];
} else {
    NSLog(@"File exists at path:%@", pathLD);
}

Чтобы получить изображение из документов, которые вы делаете:*

[UIImage imageWithContentsOfFile:pathLD];

Удачи: D;

0 голосов
/ 15 декабря 2010

Не стоит по разным причинам. Считайте каталог вашего приложения доступным только для чтения.

Вы должны использовать каталог документов или библиотеки. Apple рекомендует использовать каталог «Документы», если ваши файлы должны быть доступны пользователю через iTunes (если вы включили общий доступ к файлам через iTunes), или использовать пользовательский подкаталог Library (который необходимо создать с помощью NSFileManager), если это необходимо не видны пользователю (но должны быть сохранены).

Вы можете запросить путь к каталогу библиотеки следующим образом:

NSArray *paths;
paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,
            NSUserDomainMask, YES);
// dir = [paths objectAtIndex:0];

Замените NSLibraryDirectory на NSDocumentsDirectory, чтобы получить каталог документов.

Затем вы создадите метод, который возвращает полный путь к вашему изображению, и затем выполните:

[UIImage imageWithContentsOfFile:[self pathForImage:@"myimage.jpg"]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...