如何拍摄照片并保存在iOS上的SQLite数据库

我有一个相机应用程序,当我点击相机button时,相机打开,用户可以从相机或照片库中拍照。

我已经完成了相机部分,当用户点击button时,相机打开,他可以拍照。 问题是用户从相机拍摄的图片必须保存到SQLite数据库中。 我被困在这个部分。 有没有人可以帮助我如何保存从相机拍摄的图像?

如果您使用的是UIImagePickerController ,则可以在imagePickerController:didFinishPickingMediaWithInfo: delegate方法中获取图像。 你得到的图像是一个UIImage对象。

 UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage]; NSData *data = UIImageJPEGRepresentation(image, 1.0); 

现在NSData有一个返回void*的方法bytes 。 这将指向一个C型数组,这应该与SQLite打好。

您可以在数据库中创build一个blobtypes的数据字段,然后将字节数据保存到该列中。 但在数据库中保存图像是一种不好的做法。 相反,您可以将图像保存在文档目录中,除非非常有必要将图像保存在数据库中。

现在,当您打开相机时,将执行以下方法

 - (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)img editingInfo:(NSDictionary *)editInfo { [[picker parentViewController] dismissModalViewControllerAnimated:YES]; } 

在上面的方法中添加下面的代码:

 NSData *imageData = UIImageJPEGRepresentation(img, 1); 

然后调用保存数据到数据库的方法。

确保在数据库中将字段types作为blob。

希望能帮助到你…..