import java.io.*;.........File directory=new File("c:/data");
File[] files=directory.listFiles(new FilenameFilter(){
   public boolean accept(File dir, String name){
      return name.startsWith("s");
   }
});//orString[] fileNames=directory.list(new FilenameFilter(){
   public boolean accept(File dir, String name){
      return name.startsWith("s");
   }
});

解决方案 »

  1.   

    import java.io.*;
    import java.util.*;public class TryFileNames
    {
    private static String myPath = "e:\\tmp\\";
    public static void main(String args[])
    {
    ExtensionFilter myFilter= new ExtensionFilter("wav"); 
    String[] resultNames;
    File searchFilePath;

    searchFilePath = new File(myPath);
    resultNames= getFilePath.list(myFilter);
    for(int i=0;i<resultNames.length;i++)
    {
    System.out.println("the existing file "+i+" is: "+ resultNames[i]);
    }
    }//end main
    }//end public class
    class ExtensionFilter implements FilenameFilter
    {
    private String extension;
    public ExtensionFilter(String endStr)
    {
    extension = "."+endStr;
    }
    public boolean accept(File dir, String name)
    {
    return name.endsWith(extension);
    }
    }//end inner class
      

  2.   

    import java.io.*;class DirFilter implements FilenameFilter {String strPick;
      DirFilter(String strPick) {
        this.strPick = strPick;
      }public boolean accept(File dir,String name) {
        String f = new File(name).getName();
        return f.indexOf(strPick)!=-1;
      }
    }------------------------------------------class FilterS {
      public static void main(String[] args) {    try {
          File oDir = new File("."); //.表示当前文件夹,你可以自行修改
          String[] strList;
          strList = oDir.list(new DirFilter("s"));
          for (int i = 0; i < strList.length; i++) {
            System.out.println(strList[i]);
          }
        }
        catch (Exception ex) {
          System.out.println(ex);
        }  }}
      

  3.   

    sorry,上面的代码中f.indexOf应为f.startWith