2010-03-17 94 views
2
public class DocFilter extends FileFilter { 
    public boolean accept(File f) { 
     if (f.isDirectory()) { 
      return true; 
     } 

     String extension = Utils.getExtension(f); 
     if (extension != null) { 
      if (extension.equals(Utils.doc) || 
       extension.equals(Utils.docx)) 
      { 
       return true; 
      } else { 
       return false; 
      } 
     } 
     return false; 
    } 

    //The description of this filter 
    public String getDescription() { return "Just Document Files"; } 
} 

Netbeans的編譯器錯誤警告說,「沒有此接口預期」上面的代碼的Java的FileFilter

任何人有想法是什麼問題?我嘗試將「擴展」更改爲「實現」,但是,它似乎沒有這樣工作。

,當我改變爲工具,下面的代碼不能工作,

chooser.addChoosableFileFilter(new DocFilter()); 

和與此錯誤,

「類javax.swing.JFileChooser方法addChoosableFileFilter不能被應用到給定的類型所需:javax.swing.filechooser.FileFilter「

任何人都可以幫忙嗎?謝謝..

+0

您的進口產品看起來如何?你輸入正確的'FileFilter'? – 2010-03-17 09:23:33

+0

yeah Joachim Sauer, 我輸入了錯誤的庫。哈哈..我的不好.. – 2010-03-17 09:58:43

回答

3

medoapl給我帶來了答案。

JFileChooser預計javax.swing.filechooser.FileFilter當您的進口必須聲明您使用java.io.FileChooser。第一個是一個類,第二個是接口。因此,請在導入中將第二個替換爲第一個。

+0

最有可能。清理進口可以消除問題! – 2010-03-17 09:24:38

+0

OMG〜!自從Netbeans提出將io庫作爲第一選擇並且我接受它之後,我忽略了這一部分。我懷疑已經... 非常感謝Riduidel .. ^^ – 2010-03-17 10:14:24