从inputstream获取并显示android中的图像

时间:2019-01-12 10:58:26

标签: android image bitmap inputstream

首先要说我是Android语言的新手,我需要一些帮助。

我试图从连接到我的java程序的输入流中获取图像,并将其保存到内部存储中,然后显示它。但是,我的代码根本没有收到任何错误,但是图像根本没有显示。我的Java程序/文件没有问题,因为它可以与我用Java编写的另一个程序实现100%的工作,而我在Java程序中所做的相同。

public void GetImage()
{

    try
    {
        InputStream inputStream = new BufferedInputStream(connectionSocket.getInputStream());
        Bitmap bitmap = BitmapFactory.decodeStream(inputStream);
        FileOutputStream out = new FileOutputStream(getFilesDir() + "james.png");
        bitmap.compress(Bitmap.CompressFormat.PNG, 90, out);
    }
    catch (IOException e)
    {
        Log.d("ERROR", "GetImage: " + e);
    }
}
public void DisplayImage()
{
    ImageView myImageview = (ImageView) findViewById(R.id.myImageView);
    int imageResource = getResources().getIdentifier(getFilesDir() + "james.png", null, this.getPackageName());
    myImageview.setImageResource(imageResource);
}

任何人都可以看一下代码,然后告诉我我在做什么错吗?谢谢

1 个答案:

答案 0 :(得分:0)

    File imgFile = new  File(getFilesDir() + "james.png");

if(imgFile.exists()){
   Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
   ImageView myImageview = (ImageView) findViewById(R.id.myImageView);
   myImageview.setImageBitmap(myBitmap);
}

请用它替换您的方法代码