gpt4 book ai didi

java - 使用 java.io.File 时出现 NullPointerException

转载 作者:行者123 更新时间:2023-11-29 09:55:56 25 4
gpt4 key购买 nike

我正在尝试使用这个程序来计算 D:\驱动器中的所有文件,但是当我运行它时它抛出异常。

package lmh;

import java.io.File;

public class FileList {

static int fileNum = 0;
static int directoryNum = 0;
static int cannotRead = 0;

public static void main(String[] args) {
File f = new File("e:/");
printFileStructure(f);
System.out.println("result:");
System.out.println("file number:" + fileNum);
System.out.println("directory number:" + directoryNum);
System.out.println("cannot rend:" + cannotRead);
}

public static void printFileStructure(File f) {
File[] files = f.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile()) {
if (files[i].canRead()) {
fileNum++;
System.out.println(files[i].getName());
} else {
cannotRead ++;
}
}
else if (files[i].isDirectory()) {
if (files[i].canRead()) {
directoryNum++;
printFileStructure(files[i]);
} else {
cannotRead ++;
}
}
}
}
}

最佳答案

File.listFiles() 不保证返回非空值。这往往会发生(根据我的经验),因为 Java 可以看到看起来像目录的内容,但无法列出它(想到连接点)

关于java - 使用 java.io.File 时出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11643011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com