使用J2SE1.4新特性来获取图象资源

 

使用J2SE1.4新特性来获取图象资源

 

下面的这个例子示范怎样使用javax.imageio包来从一个文件、输入流或URL获取图象资源,同时也示范了如何来把Image显示到屏幕上. javax.imageio包默认支持GIF,PNGJPEG格式的图片,这个例子只能工作在J2SE1.4或以上版本


 

    Image image = null;

    try {

        File file = new File("image.gif");

        image = ImageIO.read(file);

 

        InputStream is = new BufferedInputStream(

            new FileInputStream("image.gif"));

        image = ImageIO.read(is);

   

        URL url = new URL("http://hostname.com/image.gif");

        image = ImageIO.read(url);

    } catch (IOException e) {

    }

   

    JFrame frame = new JFrame();

    JLabel label = new JLabel(new ImageIcon(image));

    frame.getContentPane().add(label, BorderLayout.CENTER);

    frame.pack();

    frame.setVisible(true);

javax.imageio默认可以读和写一个GIF,PNGJPEG图片,你可以调用ImageIO.getReaderFormatNames() ImageIO.getWriterFormatNames()来列出全部可读和可写的图片格式


 

    String[] formatNames = ImageIO.getReaderFormatNames();

    formatNames = unique(formatNames);

   

    formatNames = ImageIO.getWriterFormatNames();

    formatNames = unique(formatNames);

    // png jpeg jpg

   

 

    formatNames = ImageIO.getReaderMIMETypes();

    formatNames = unique(formatNames);

    // image/jpeg image/png image/x-png image/gif

   

    formatNames = ImageIO.getWriterMIMETypes();

    formatNames = unique(formatNames);

    // image/jpeg image/png image/x-png

   

 

    public static String[] unique(String[] strings) {

        Set set = new HashSet();

        for (int i=0; i< } String[0]); (String[])set.toArray(new return set.add(name); name="strings[i].toLowerCase();" String { i++)>

 

 

图片格式的转换(jpg 转为 png

package jpgToPng;

 

import java.awt.image.BufferedImage;

import java.io.File;

import java.io.IOException;

 

import javax.imageio.ImageIO;

 

/**

 * jpg转为png

 * @author steve_wang_victor

 *

 */

public class JpegToPng {

 

         /**

          * @param args

          */

         public static void main(String[] args) {

 

                   BufferedImage bufferedImage = null;

                   File file = new File("D:/excel/123.jpg".replace("jpg", "png"));

                   try {

                            bufferedImage = ImageIO.read(new File("D:/excel/123.jpg"));

                            ImageIO.write(bufferedImage, "png", file);//bufferedImage图片的格式读进来,转为png格式

                   } catch (IOException e) {

                            e.printStackTrace();

                   }

         }

 

}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值