来自File的java.awt.Image

mil*_*ilo 20 java file-io image

如何java.awt.Image从文件加载对象,并知道它何时加载?

小智 44

ImageIO助手类提供了读取和写入从/到文件和流的图像.

要从文件中读取图像,您可以使用ImageIO.read(File)(返回a BufferedImage).但既然BufferedImage是子类Image,你可以这样做:

try {
    File pathToFile = new File("image.png");
    Image image = ImageIO.read(pathToFile);
} catch (IOException ex) {
    ex.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)


Nic*_*zyk 7

使用java.awt.MediaTracker.

这是一个完整的例子.

基本上,

 toolkit = Toolkit.getDefaultToolkit();
 tracker = new MediaTracker(this);
 Image image = toolkit.getImage("mandel.gif");
 tracker.addImage(image, 0);
 tracker.waitForAll();
Run Code Online (Sandbox Code Playgroud)


Fra*_*ani 5

我会使用一个ImageIcon. 这样做,您不必担心任何已检查的异常。MediaTracker另请注意,它在从文件资源加载图像时使用 a 。

ImageIcon icon = new ImageIcon("image.png");
Image image = icon.getImage();
Run Code Online (Sandbox Code Playgroud)