标题:byte[] 到image的转换问题
只看楼主
lqdsj
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-3
 问题点数:0 回复次数:1 
byte[] 到image的转换问题
大家好:
    我想的是把一个图片文件转换成 byte 数组后通过 socket 传到 server 端,并在server端显示出来,
通过相应测试,byte数组数据是传到server端了,可在取出数据后并转换成 image并显示时,图片显示为全黑色,
请问这是什么原因?

图片文件转换成byte[]代码如下:

  ImageIcon ima=new ImageIcon("D:\\temp\\Sunset.jpg");
  BufferedImage bu = new BufferedImage(
                     ima.getImage().getWidth(null),ima.getImage().getHeight(null),BufferedImage.TYPE_INT_RGB);
  ByteArrayOutputStream imageStream=new ByteArrayOutputStream();
  boolean resultWrite = ImageIO.write(bu, "jpg", imageStream);
  byte [] tagInfo=imageStream.toByteArray();

在server端把读取出的byte[]转换成image的代码如下:

  Image img=Toolkit.getDefaultToolkit().createImage(buf, 0,buf.length);
  ImageIcon imagico=new ImageIcon(img);
  cjf.jta.insertIcon(imagico);
  其中buf为读取出的byte数组; cjf.jta为一个JTextPane对象

请大家帮忙看看,小弟在此表示感激!
搜索更多相关主题的帖子: byte image 
2008-07-11 13:24
lqdsj
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-5-3
得分:0 
问题已解决
不好意思啊,天太闷,头脑不消晰了,文件都没放进去怎么能读到呢
修改革开放BufferedImage bu=new..........一句为:
 BufferedImage bu = ImageIO.read(new File("D:\\temp\\Sunset.jpg"));
就可以了
2008-07-11 15:20



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-223493-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.200589 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved