Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JFileChooser打开图像_Java_Image_Swing_Image Processing - Fatal编程技术网

Java JFileChooser打开图像

Java JFileChooser打开图像,java,image,swing,image-processing,Java,Image,Swing,Image Processing,这是一个JFileChooser源代码。我希望使用此文件选择器打开的图像可以读取,以便它可以在图像中获取RGB像素值,并可以处理到下一阶段。但我不知道我应该怎么做,我只是了解了这一点,可能有必要添加到这个源代码 try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception ex) { } J

这是一个
JFileChooser
源代码。我希望使用此文件选择器打开的图像可以读取,以便它可以在图像中获取RGB像素值,并可以处理到下一阶段。但我不知道我应该怎么做,我只是了解了这一点,可能有必要添加到这个源代码

 try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
         } 
     catch (Exception ex) 
     {

     } 
    JFileChooser chooser = new JFileChooser(System.getProperty("user.home") + System.getProperty("file.separator")+ "Pictures");
    chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
    chooser.setAcceptAllFileFilterUsed(false);
    chooser.setDialogTitle("Choose a photo"); 
    chooser.setApproveButtonText("Buka Gambar");
    chooser.setFileFilter(new FileFilter() {
        @Override
        public String getDescription() {
            return "Semua Format Gambar";
        }
        @Override
        public boolean accept(File f) {
            if (f.isDirectory()) {
                return true;
            } else {
                return f.getName().toLowerCase().endsWith(".jpg")
                        || f.getName().toLowerCase().endsWith(".gif")
                        || f.getName().toLowerCase().endsWith(".png")
                        || f.getName().toLowerCase().endsWith(".bmp")
                        || f.getName().toLowerCase().endsWith(".jpeg")
                        || f.getName().toLowerCase().endsWith(".tiff");
            }
        }
    }); 
    int res = chooser.showOpenDialog(MSE_PSNR.this);
    try {
        UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
    } catch (Exception ex) {
       ex.printStackTrace();
    }  
    if (res == JFileChooser.APPROVE_OPTION) {            
        File file = chooser.getSelectedFile();
    String path = chooser.getSelectedFile().toString();
    jTextField1.setText(path);
        ImageIcon image = new ImageIcon(file.getAbsolutePath());
        Rectangle rect = jLabel5.getBounds();
        Image scaledImage = image.getImage();
        image = new ImageIcon(scaledImage);
        jLabel5.setIcon(image);
    } else 
    { 
        JOptionPane.showMessageDialog(this, "Batal Memilih Gambar");
    }

非常感谢。我将看到并学习!!你能帮我吗。。。?我正在进行java中不可见水印图像的最终分配!!现有方法的源代码可以运行,但是执行仍然是以输入数组的形式进行的,我将尝试在图像上执行,但我不知道如何将该方法应用到图像上,例如?
chooser.setFileFilter(new FileFilter(){
改用
new FileNameExtensionFilter(“图像文件”),ImageIO.getReaderFileSuffix());
。请注意,如果不将JAI添加到运行时类路径中,J2SE将无法处理TIFF图像。哦,请修复卡住的
键。很少需要一个
,而不需要两个。