1

这是我用来加载名为“boat.png”的图像的代码

@Override
public void paint(Graphics g) {
    BufferedImage img = null;
    try {
       img = ImageIO.read(new File("boat.png"));
       } catch (IOException e) {
           System.out.println("Can't load the image");
    }
}

这两行会产生错误

BufferedImage img = null;
img = ImageIO.read(new File("boat.png"));

虽然我已经包括

import java.io.*;
import java.awt.*;

请帮我找出错误!

4

3 回答 3

3

我相信问题在于BufferedImage包装java.awt.image中,而不仅仅是java.awt,所以你需要:

import java.awt.image.*;

或者

import java.awt.image.BufferedImage;

一些 IDE 会通过建议导入哪个包来帮助您修复此错误 - Eclipse 肯定会这样做。

编辑:您需要导入javax.imageio.*javax.imageio.ImageIO- 但您肯定也需要较早的导入之一......

于 2013-01-13T17:07:01.040 回答
3

ImageIO 类位于javax.imageio包中。

尝试导入该包:

import javax.imageio.ImageIO;
于 2013-01-13T17:10:48.263 回答
1
  import java.awt.image.BufferedImage 

应包括此导入声明。

于 2013-01-13T17:08:37.327 回答