iOS

2013-04-19, ios

画像を保存・ロードする

カメラロールではなくディレクトリ内でデータをやり取りする方法です。まずは以下の要領で、アプリからアクセス可能なディレクトリ内の画像のパスを生成します。この例では、Documentsフォルダの中のfoo.pngというファイルを指定しています。

NSString *path = [NSString stringWithFormat:@"%@/foo.png",
  [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];

foo.pngにUIImageオブジェクトを保存する場合は、以下のような流れになります。

NSData *data = UIImagePNGRepresentation(image);
BOOL res = [data writeToFile:path atomically:NO];
NSLog(@"%@.png %@",path,(res?@"Ok.":@"Fail."));

逆にfoo.pngを読み込んでUIImageを生成する場合は、以下の通りです。

NSData *data = [NSData dataWithContentsOfFile:path];
UIImage *image = [UIImage imageWithData:data];

参考URL

この記事は役に立ちましたか?