如何使用JFileChooser读取用户选择的图像文件

时间:2013-01-03 12:50:36

标签: java swing bufferedimage jfilechooser

我想阅读用户使用JFileChooser选择的图像,然后能够获得颜色通道(R,G,B)以及图像的宽度和高度。

这是阅读所选图像文件的正确方法。

File im1 = new File(chooser.getSelectedFile(), null);       
BufferedImage buff =ImageIO.read(im1);

或者是否有更好的方法来读取图像文件以获取其单独颜色通道的值并获取其单独的值。

2 个答案:

答案 0 :(得分:2)

您的代码看起来不错。继续使用宽度,高度和RGB。

File im1 = chooser.getSelectedFile();    
BufferedImage buff = ImageIO.read(im1);

if (buff != null) {
    System.out.println(buff.getWidth() + " " + buff.getHeight());
    System.out.println(buff.getRGB(0, 0));
}

答案 1 :(得分:0)

我没有找到任何“更好”的方式加载图片,所以我相信你做得对。

要回答您的整个问题,以下是如何从图像中获取特定颜色通道的示例。

Color c = new Color(image.getRGB());
int red = c.getRed();
int green = c.getGreen();
int blue = c.getBlue();