2012-03-27 13 views
3

私はJFileChooserでJFileFilterを構築していますが、コードsetFileFilterがあり、IDEが情報を提供しているところでエラーが発生しました 'JFileChooser型のメソッドsetFileFilter(FileFilter)は引数には適用されません(新しいFileFilter(){}) '。しかし、私は前にこの形式でやっていると確信しています。誰も私がなぜこれが機能していないのを見つけて理解するのを助けることができますか?ありがとう!Java setFileFilterの問題

JFileChooser chooser = new JFileChooser(); 
     chooser.setDialogTitle("Open File"); 
     chooser.setFileFilter(new FileFilter(){ 

      @Override 
      public boolean accept(File f) { 
       String fName = f.getName().toUpperCase(); 
       if (fName.endsWith(".TXT") || f.isDirectory()) { 
        return true; 
       } else { 
        return false; 
       } 
      } 

      public String getDescription() { 
       return "Text File (*.txt)"; 
      } 

     }); 
+0

'java.io.FileFilter'ではなく、' javax.swing.filechooser.FileFilter'を自動インポートするのは確かですか? – talnicolas

+0

うん、それはそのインポートを作った! – mino

答えて

8

それは問題がJ2SEで2 FileFilterのクラス/インタフェースがあるということですちょうどFileFilterの

だ、JFileFilterではありません。 1つはjava.ioで使用されています...私はかなりそのファイルで確信しています。もう一つはJFileChooserのためのものです。おそらく間違ったものをインポートしたでしょう。

ところで、おそらくあなたが望むすべてのことをする拡張子filenameFilterなどがあります。ドキュメント内の適切なクラスを見つけて、そのサブクラスを探します

+0

あなたの助言を使ってそれを解決しました。使用:FileNameExtensionFilter。ありがとう! – mino