你是不是需要将一个图片文件比如logon.gif设定成一个java需要的图标?比如将一个图片放在一个JLabel上面作为一个图标显示:
那么可以如下
 ImageIcon icon = new ImageIcon(LogonFrame.class.getResource("logon.gif"));
 jLabel1.setIcon(icon);
如果想将设置一个Frame的显示图标,则如下即可:
   this.setIconImage(Toolkit.getDefaultToolkit().createImage(FrameName.class.getResource("logon.gif")));
其中FrameName为你的Frame的java文件名,同时图片应该和java文件放在同一目录

解决方案 »

  1.   

    谢谢!
    不过我想做的是自己将一个image 对象生成一个图片文件,并把它存倒硬盘上。
      

  2.   

    import java.io.*;public class testraf{
      
      public static void main(String[] args) throws IOException{
        RandomAccessFile raf = new RandomAccessFile("c:\\hello.gif","rw");
       
       try{
        raf.writeBytes("heheheheheh");
        raf.close();
    }catch(Exception e){

    }
      }
      
    }其中raf.write(byte[] b)可以让你写入图片的字节流,建议用Ultra Edit打开图片文件研究一下它的字节流。
      

  3.   

    BufferedImage image;
      public void createImage(String fileLocation) {
        try {
          FileOutputStream fos = new FileOutputStream(fileLocation);
          BufferedOutputStream bos = new BufferedOutputStream(fos);
          JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(bos);
          encoder.encode(image);
          bos.close(); 
        } catch(Exception e) {
          System.out.println(e);
        }
      }
      

  4.   

    BufferedImage好像有缓存限制,如果大了就会内存溢出错误,怎样解决???
      

  5.   

    同意: zhenyang2002(珍阳) 。