请教各位高手下面程序有何问题?import java.io.File;
import java.io.FileFilter;public class DDD implements FileFilter {
    private String str;
    public  DDD(String str)
    {
        this.str = str;
    }    
    public boolean accept(File file) {
        
        if(file.isDirectory())
        {
           return false;
        }
        String name = file.getName();
        int index = name.lastIndexOf(".");//扩展名前的符号"."
        if(index == -1)//没有扩展名则返回false
        {
             return false;
        }
        else if(index == name.length()-1)//以点号结尾则返回false
        {
             return  false;
        }
        else
        {
            return this.str.equals(name.substring(index + 1));
        }
    }    public static void main(String[] args) 
    {
        File file = new File("D:/demo");
        DDD txtFilter = new DDD("txt");
        File[]files = file.listFiles(txtFilter);//使用过滤器查找文件
        for(int i = 0;i < files.length;i++)//一直说此句有错,不解!        
        {            
         System.out.println(files[i].getAbsolutePath());
        }    }}

解决方案 »

  1.   

    Exception in thread "main" java.lang.NullPointerException
    at file.file.main(file.java:38)
      

  2.   

    高手,麻烦解释一下,要怎么改才能正常运行呢,我是在eclipse里写的,并没显示任何异常,只是运行的时候有问题,多谢!
      

  3.   

    我这里运行正常啊,可能你的"D:/demo"目录下没有.txt文件吧,你遍历一下所有的子目录试试
      

  4.   

    if(files!=null){
      for(int i = 0;i < files.length;i++)   {   
        ......
      }
    }