【问题标题】:How to write a image uploaded by Mongodb GridFS onto ImageView如何将Mongodb GridFS上传的图片写入ImageView
【发布时间】:2014-01-13 13:53:03
【问题描述】:

我已经使用 Mongodb GridFS 上传了一张图片,现在我想在 Android 应用程序的 ImageView 中显示这张图片。 我的显示代码是

String bitmap = "/mnt/sdcard/image.png"
GridFS myContracts = new GridFS(myDatabase, "contracts");
GridFSDBFile file = myContracts.findOne("smithco");
file .writeTo(bitmap);
imageView.setImageBitmap(BitmapFactory.decodeFile(bitmap));

我正在尝试将此文件写入 image.png,然后尝试将此文件上传到 imageView 但它不起作用。现在我想在 ImageView 中显示这个“文件”,但我不知道该怎么做。还有没有其他方法可以显示图像而不是将其保存到文件中。有人可以帮忙吗?

【问题讨论】:

    标签: android mongodb android-imageview gridfs


    【解决方案1】:

    如果您只是临时需要,可以将图像存储在应用程序缓存目录中。代码如下:

    `

    GridFS gfs = new GridFS(db);
    ObjectId fileId = new ObjectId("your_object_id");
    
    GridFSDBFile gfsFile = gfs.find(fileId);
    File outFile;
    RelativeLayout v = (RelativeLayout) findViewById(R.id.RelativeLayout);
    Context context = (Context) v.getContext();
    outFile = File.createTempFile("xyz", null, context.getCacheDir());
    gfsFile.writeTo(outFile);
    ImageView iv= (ImageView)findViewById(R.id.imageView1);
    InputStream is = new FileInputStream(outFile);
    
    iv.setImageBitmap(BitmapFactory.decodeStream(is));
    outFile.delete();`
    

    【讨论】:

      猜你喜欢
      • 2011-07-17
      • 1970-01-01
      • 1970-01-01
      • 2015-11-29
      • 1970-01-01
      • 2015-07-18
      • 1970-01-01
      • 2011-06-26
      • 2012-03-22
      相关资源
      最近更新 更多