歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java文件選擇JFileChooser使用例子

JFileChooser類的使用非常簡單,主要是對一些屬性的設置,以及文件篩選器的使用。

[java]

  1. import javax.swing.JFileChooser;  
  2.   
  3. public class FileChooser {  
  4.     public static void main(String[] args)  
  5.     {  
  6.         JFileChooser fc = new JFileChooser("D:");  
  7.         //是否可多選   
  8.         fc.setMultiSelectionEnabled(false);  
  9.         //選擇模式,可選擇文件和文件夾   
  10.         fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);  
  11. //      fc.setFileSelectionMode(JFileChooser.FILES_ONLY);   
  12. //      fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);   
  13.         //設置是否顯示隱藏文件   
  14.         fc.setFileHidingEnabled(true);  
  15.         fc.setAcceptAllFileFilterUsed(false);  
  16.         //設置文件篩選器   
  17.         fc.setFileFilter(new MyFilter("java"));  
  18.         fc.setFileFilter(new MyFilter("zip"));  
  19.           
  20.         int returnValue = fc.showOpenDialog(null);  
  21.         if (returnValue == JFileChooser.APPROVE_OPTION)  
  22.         {  
  23.             //fc.getSelectedFile()   
  24.             //fc.getSelectedFiles()   
  25.         }  
  26.     }  
  27. }  

[java]

  1. import java.io.File;  
  2. import javax.swing.filechooser.FileFilter;  
  3.   
  4. public class MyFilter extends FileFilter  
  5. {  
  6.       
  7.     private String ext;  
  8.       
  9.     public MyFilter(String extString)  
  10.     {  
  11.         this.ext = extString;  
  12.     }  
  13.     public boolean accept(File f) {  
  14.         if (f.isDirectory()) {  
  15.             return true;  
  16.         }  
  17.   
  18.         String extension = getExtension(f);  
  19.         if (extension.toLowerCase().equals(this.ext.toLowerCase()))  
  20.         {  
  21.             return true;  
  22.         }  
  23.         return false;  
  24.     }  
  25.   
  26.   
  27.     public String getDescription() {  
  28.         return this.ext.toUpperCase();  
  29.     }  
  30.   
  31.     private String getExtension(File f) {  
  32.         String name = f.getName();  
  33.         int index = name.lastIndexOf('.');  
  34.   
  35.         if (index == -1)  
  36.         {  
  37.             return "";  
  38.         }  
  39.         else  
  40.         {  
  41.             return name.substring(index + 1).toLowerCase();  
  42.         }  
  43.     }  
  44. }  
Copyright © Linux教程網 All Rights Reserved