最近的項目中遇到ImageIO,因此記錄下這個類的用法
一、ImageIO:
這個類中的方法都是靜態方法,可以用來進行簡單的圖片IO操作
1、讀入的三種方法
public static BufferedImage read(File input)
File file = new File("/Users/xixi/Documents/aaa.png"); BufferedImage bu = ImageIO.read(file);
- 1
- 2
public static BufferedImage read(InputStream input)
public static BufferedImage read(ImageInputStream stream)
2、RenderedImage接口的子類是BufferedImage,因此在這里可以直接出傳入BufferedImage的實例化對象,將BufferedImage對象直接寫出指定輸出流
public static boolean write(RenderedImage im,String formatName,File output)
public static boolean write(RenderedImage im, String formatName,OutputStream output)
public static boolean write(RenderedImage im, String formatName,ImageOutputStream output)
復制圖片代碼
public class Test { public static void main(String[] args) { File out = new File("/Users/wangjue/DownLoads/1.jpg"); //將圖片寫入ImageIO流 try { BufferedImage img = ImageIO.read(out); //將圖片寫出到指定位置(復制圖片) OutputStream ops = new FileOutputStream(new File("/Users/wangjue/DownLoads/1(1).jpg")); ImageIO.write(img, "jpg", ops); } catch (IOException e) { e.printStackTrace(); } } }