按名称将图像从相机保存到 sqlite
Posted
技术标签:
【中文标题】按名称将图像从相机保存到 sqlite【英文标题】:save image by name from camera into sqlite 【发布时间】:2012-02-08 05:24:48 【问题描述】:对不起,我是这里的新手。我有一个方法startCamera
是这样的:
public void startCamera()
Cursor c=helper.getById(almagId);
c.moveToFirst();
fileName = helper.getKdStore(c)+ waktu + ".jpg";
Log.d("ANDRO_CAMERA", "Starting camera on the phone...");
//String fileName = "testphoto.jpg";
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE, fileName);
values.put(MediaStore.Images.Media.DESCRIPTION,"Image capture by camera");
values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
imageUri = getContentResolver().insert(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, IMAGE_CAPTURE);
//return intent;
protected void onActivityResult(int requestCode, int resultCode, Intent data)
if (requestCode == IMAGE_CAPTURE)
if (resultCode == RESULT_OK)
Log.d("ANDRO_CAMERA","Picture taken!!!");
imageView.setImageURI(imageUri);
然后我在 Dbhelper 中有这样的方法 insertImage
public void insertPicture(String image1,String image2,String image3)
//waktu = new Date().toString();
ContentValues im = new ContentValues();
//im.put("kdstore", kdstore);
im.put("image1", image1);
im.put("image2", image2);
im.put("image3", image3);
System.out.println();
getWritableDatabase().insert("image", "name", im);
我想在sqlite中按名称保存图片,以便我以后可以检索它们。
【问题讨论】:
【参考方案1】:正如 Jox Traex 所说,不需要将图像存储在数据库中。如果您只存储图像的路径会很容易。然后只从同一路径检索图像。您可以参考一些示例相关代码
MimeBodyPart attachmentPart = new MimeBodyPart();
FileDataSource fileDataSource = new FileDataSource(path_img)
@Override
public String getContentType()
return "image/jpg";
;
attachmentPart.setDataHandler(new DataHandler(fileDataSource));
attachmentPart.setFileName("image.jpg");
【讨论】:
【参考方案2】:你的想法是从哪里得到的...为什么你会将图像插入数据库?只需存储文件在数据库中位置的链接...
虽然数据库提供 blob 选项,但您绝对不想一直这样做.. 会很麻烦。探索其他替代方案并停止对解决方案如此非黑即白。
【讨论】:
以上是关于按名称将图像从相机保存到 sqlite的主要内容,如果未能解决你的问题,请参考以下文章