我有一些麻烦将图像路径保存到Documents文件夹并将路径存储到我的sqlite3本地数据库。保存图像路径到sqlite3数据库
今天我成功地将图像作为BLOB存储到数据库中,但是在互联网上阅读时,人们说这不被推荐。
所以,现在我想存储在数据库映像路径,但..
形势
- 用户点击一个按钮来选择图像(通过UIImagePickerView)或拍摄新照片
- 选择图像后,imageView会随所选图像一起设置。
代码选择器:
-(void)imagePickerController:(UIImagePickerController *)pickr didFinishPickingMediaWithInfo:(NSDictionary *)info{
UIImage *image = [info objectForKey:UIImagePickerControllerEditedImage];
/* Test code for saving data */
//NSString *dir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
//NSString *pngPath = [NSString stringWithFormat:@"%@/test.png",dir];
//NSData *data = [NSData dataWithData:UIImagePNGRepresentation(image)];
//[data writeToFile:pngPath atomically:YES];
[imageView setImage:image];
picture = YES;
[pickr dismissModalViewControllerAnimated:YES];
}
现在我有几个问题
- 进入我的数据库,图像是BLOB类型。我应该将它编辑为TEXT吗?
- 如何保存路径?我的意思是,在测试代码中,/ test.png是一个通用的图像名称。所选图像名称是否也被保存以便我可以检索它?或者,更好的是,如果我保存从名为“IMG0001”的库中拾取的图像,它会保存为“测试”吗?
- 什么是正确的方式来保存图像到文档文件夹,其路径到数据库,然后检索它?
我搜索了很多答案,但经过很多实验后,我放弃了。
在此先感谢
感谢您的教程链接,我几分钟前看到,我打算跟着它。感谢您指引我走上正确的道路,所以我猜对了:将BLOB转换为TEXT。 – Phillip
是的,它真的非常简单和快速的文件目录保存图像,而不是sqlite数据库 –
但是,正如我在下面的评论中说的,我怎么知道文件名(PNG)?我在图像选择器委托方法中做了保存工作,所以我有点困惑 – Phillip