我想把外部通信得到的一个byte[]转成张图片,但有些问题,部分代码如下:
- Java code
Image yourImg = Toolkit.getDefaultToolkit().createImage(ri.data); //ri.data就是个byte数组 BufferedImage img = new BufferedImage(ri.width, ri.height, BufferedImage.TYPE_INT_RGB); Boolean flag = img.getGraphics().drawImage(yourImg, 0, 0,ri.width,ri.height, null); FileOutputStream fos = new FileOutputStream("test1.jpg"); ImageIO.write(img, "jpg", fos); fos.close();
首先Image yourImg = Toolkit.getDefaultToolkit().createImage(ri.data);这句是过的
但在Boolean flag = img.getGraphics().drawImage(yourImg, 0, 0,ri.width,ri.height, null); 这句之后发现img里面的data都是0,而且返回的一个false,不知道是什么原因?难道还是得到的ri.data数据不正确?
请各位帮帮忙,谢谢先
------解决方案--------------------
MARK
------解决方案--------------------
- Java code
byte[] bytes = ri.data;FileOutputStream fos = new FileOutputStream("D://test1.jpg");fos.write(bytes);fos.close();
------解决方案--------------------
mark
------解决方案--------------------
ImageIcon icon=new ImageIcon(new String(字节数组));