[XCODE] iPhoneで画像をアプリケーション内に保存するには
こんにちは、@yoheiMuneです。
今日は、iPhoneアプリケーションで、自身のアプリ内にユーザー画像を保存する方法をブログに記載したいと思います。

そんな際に、保存するには、以下のようにすると実現出来ます。
ここでは、UIImageJPEGRepresentationという関数を使って、NSDataを作るところがポイントです。
UIImagePNGRepresentation(<#UIImage *image#>)という関数を使う事で、PNGファイルも作成可能です。
NSDataを作成する為の関数さえ使えれば、後は簡単カンタン(*´∇`*)
・UIImageの使い方
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/Reference/Reference.html
・UIImageJPEGRepresentationとUIImagePNGRepresentationの使い方
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIKitFunctionReference/Reference/reference.html#//apple_ref/c/func/UIImagePNGRepresentation
今後も、自分のつまづいた点はブログに残して行ければ良いな。
今日は、iPhoneアプリケーションで、自身のアプリ内にユーザー画像を保存する方法をブログに記載したいと思います。

アプリケーション内に画像を保存する
ユーザーにアルバムから選んでもらった画像を、後々使いたいので、アプリ内に保存したい時もあるかと思います。そんな際に、保存するには、以下のようにすると実現出来ます。
// 例えば、カメラやアルバムから選んでもらった画像を扱います
- (void) imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info {
// ユーザーの選んだ(または撮影した)画像を取得します
UIImage *aImage = [info objectForKey:UIImagePickerControllerOriginalImage];
// JPEGのデータとしてNSDataを作成します
// ここのUIImageJPEGRepresentationがミソです
NSData *data = UIImageJPEGRepresentation(aImage, 0.8f);
// 保存するディレクトリを指定します
// ここではデータを保存する為に一般的に使われるDocumentsディレクトリ
NSString *path = [NSStringstringWithFormat:@"%@/sample.jpg",
[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"]];
// NSDataのwriteToFileメソッドを使ってファイルに書き込みます
// atomically=YESの場合、同名のファイルがあったら、まずは別名で作成して、その後、ファイルの上書きを行います
if ([data writeToFile:path atomically:YES]) {
NSLog(@"save OK");
} else {
NSLog(@"save NG");
}
}
ここでは、UIImageJPEGRepresentationという関数を使って、NSDataを作るところがポイントです。
UIImagePNGRepresentation(<#UIImage *image#>)という関数を使う事で、PNGファイルも作成可能です。
NSDataを作成する為の関数さえ使えれば、後は簡単カンタン(*´∇`*)
参考資料
以下を参考にしました。ありがとうございます。・UIImageの使い方
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImage_Class/Reference/Reference.html
・UIImageJPEGRepresentationとUIImagePNGRepresentationの使い方
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIKitFunctionReference/Reference/reference.html#//apple_ref/c/func/UIImagePNGRepresentation
最後に
調べる当初はやり方の検討も付かないですが、同じ事でハマっている人はたくさん居るんですね。心強いです(`・ω・´)今後も、自分のつまづいた点はブログに残して行ければ良いな。





