从网上下载图片

来源:互联网 发布:windows10自带看图软件 编辑:程序博客网 时间:2024/04/30 03:50

从网上下载图片的时候可能不知道图片是什么格式的,这样如果用Image.write来写文件的话可能会出问题。刚才尝试用二进制把文件读下来,然后统一成jpg的后缀,这样读取jpeg和gid等格式的文件之后都能正常预览。。。

上代码:

public class Main {          public static String getFormatName(Object object) throws Exception{      ImageInputStream iis = ImageIO.createImageInputStream(object);      Iterator<ImageReader> iterator = ImageIO.getImageReaders(iis);      while (iterator.hasNext()) {      ImageReader reader = (ImageReader)iterator.next();      return reader.getFormatName();      }            return null;}    public static void main(String[] args){    try {    URL url = new URL("http://info-database.csdn.net/Upload/2012-01-31/ccb-475-60.gif");    HttpURLConnection httpURLConnection = (java.net.HttpURLConnection) url.openConnection();    httpURLConnection.connect();    BufferedInputStream bis = new BufferedInputStream(httpURLConnection.getInputStream());        FileOutputStream fos = new FileOutputStream("c:/csdn.jpg");    byte[] buffer = new byte[1024];    int size = 0;    while((size = bis.read(buffer)) != -1)    fos.write(buffer, 0, size);    fos.close();    bis.close();        File file = new File("c:/csdn.jpg");    System.out.println(getFormatName(file));} catch (Exception e) {}        }}  


原创粉丝点击