for(int i = 0; i < fileList.length; i++){
前面加上一句
if(fileList!=null)
前面加上一句
if(fileList!=null)
解决方案 »
- jtable 动态显示与隐藏列
- static 的问题!一个小小菜鸟的问题!!
- 用java的jdbc怎么来显示查询mysql数据库的表结构相关的信息
- 很奇怪,javac不能识别
- 请教一个关于日期的问题
- 请帮看一下关于RMI的错误,谢拉!!!!
- 请教 谁用过iText生成pdf,在生成pdf的过程中如何使pdf中的Table显示中文?
- 我做了一个application 来测试连接数据库,出现如下问题:
- 急急急!!!!!!哪儿有java学习资料下载!!!
- 菜鸟求助,所有程序都这样,HELP,分能给多少就给多少了!
- JAVA简单问题
- 请问:怎样将一个十进制的byte型变量转换成十六进制的byte型变量?
f.list()有可能取不到,所以fileList就有可能是null
这样,当fileList.length的时候,由于fileList是null,对null进行.length操作,就会抛出空指针异常的错误,所以建议第一位大虾的修改意见。
在for前加两句
if(fileList==null){
System.out.println("Maybe error occured or file/directory not found.");
return;
}
---------------------------
import java.io.*;public class FileScaner{
public static void dirScan(final String path, int level){
File f = new File(path);
String[] fileList;
fileList = f.list();
if(fileList==null){
System.out.println("Maybe error occured or file/directory not found.");
return;
} for(int i = 0; i < fileList.length; i++){
for(int j = 0; j < level; j++){
System.out.print("");
}
System.out.print("|");
System.out.println(fileList[i]);
File f2 = new File(path + "\\" + fileList[i]);
if (f2.isDirectory()){
dirScan(path + "\\" + fileList[i], level+1);
}
}
}
public static void main(String[] args){
dirScan(args[0], 0);
}
}
----------
帖子先保留一阵子,希望能得到答案。明天结帖