如何从mysql glob类型中获取图像

时间:2017-08-17 07:15:01

标签: java android mysql jdbc

我在mysql workbunch中创建了一个数据库,并在其中存储了类型blob中的图片 现在我想在我的应用程序中使用这张图片,

/category/shoes-and-accessories/black-suede-boots

问题是,我如何继续?

1 个答案:

答案 0 :(得分:0)

java.sql.Blob blob = rs.getBlob(1);
byte[] imageContents = blob.getBytes(1, new Integer(blob.length()).intValue());

现在你可以按照自己的意愿操纵它了。

根据您的评论,您希望在应用程序中显示它,完成此操作,将ImageView添加到您的布局并使用以下代码:

 image = (ImageView) findViewById(R.id.imageView1);

 button = (Button) findViewById(R.id.btnChangeImage);
 button.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View arg0) {
          java.io.File tmpFileForImage = java.io.File.createTemporaryFile("image", ".png"); // or whatever your extension happens to be
          java.io.BufferedOutputStream bos = new java.io.BufferedOutputStream(new java.io.FileOutputStream(tmpFileForImage);
          bos.write(imageContents);
          bos.close();
          image.setImageResource(tmpFileForImage.getAbsolutePath());
    });

未经测试,但应该让你走上正轨。如果您需要进一步的帮助,请另外发表评论。