ホームページ  >  に質問  >  本文

java - 怎么避免listFiles()方法读取没有访问权限的文件时返回null?

listFiles
返回了一个File数组,这时候遍历这个数组会出现NullPointerException

    public static void main(String[] args) {
        File file = new File("D:\\");
        int sum = getTxtSum(file);
        System.out.println(sum);
    }
    
    public static int getTxtSum(File f) {
        File[] subFile = f.listFiles();
        int count = 0;
        for (File file : subFile) {
            if (file.isDirectory()) {
                count += getTxtSum(file);
            }else if(file.isFile() && file.getName().endsWith(".txt")) {
                count += 1;
            }
        }
        
        return count;
    }
PHP中文网PHP中文网2711日前794

全員に返信(2)返信します

  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:06:38

    これが null かどうかを確認する必要はありませんか?

    返事
    0
  • 高洛峰

    高洛峰2017-04-18 10:06:38

    これは例外をキャッチすることで実現できます

    返事
    0
  • キャンセル返事