我有一些麻煩將圖像路徑保存到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