主要想实现的功能是遍历文件夹,遇到文件夹将其展开,输出里面的文件。

我的源代码如下:

public class FileScanner {public static void main(String[] args) {File file = new File("F:/");printFiles(file, 1);}public static void printFiles(File dir,int tab){if(dir.isDirectory()){File[] next = dir.listFiles();for(int i = 0;i < next.length;i++) {for (int j = 0; j < tab; j++) {System.out.print("---");}System.out.println(next[i].getName());if(next[i].isDirectory()){printFiles(next[i],tab+1);}}}}}

运行后报错:

**Exception in thread "main" java.lang.NullPointerException**

经查,这个程序出现空指针异常,是因为没有判断next是否为null,导致报错。
经修改:

public class FileScanner {public static void main(String[] args) {
File file = new File("F:/");printFiles(file, 1);}public static void printFiles(File dir, int tab) {if (dir.exists() && dir.isDirectory()) {File[] next = dir.listFiles();if (next != null) {for (int i = 0; i < next.length; i++) {for (int j = 0; j < tab; j++) {System.out.print("---");}System.out.println(next[i].getName());if (next[i].isDirectory()) {printFiles(next[i], tab + 1);}}}}}
}

对next先进行判断是否为null再及进行使用,就不会报错了。


以后需要注意这方面,空指针异常的错误太容易出现了~

关于使用listFile()遍历文件夹报空指针异常的问题相关推荐

  1. springboot项目在测试文件夹报空指针异常

    异常原因: 解决方法: 方法一: 将测试类下移一个包 方法二: 在测试类注解上写下启动类的.class文件

  2. File类遍历(文件夹)目录功能

    package com.learn.demo01.File;import java.io.File;/*File类遍历(文件夹)目录功能- public String[] list() :返回一个St ...

  3. linux 循环显示所有的sh.*文件.,利用shell脚本遍历文件夹内所有的文件并作整理统计的方法...

    环境: Ubuntu下采用shell脚本实现 案例简述:文件夹内有许多子文件夹,这里需要自动读取所有的文件,包括他们的地址和文件名.通过观察文件名的规律,按照一定的规则裁剪出文件名的某一部分,该部分为 ...

  4. python遍历文件夹方法

    python遍历文件夹 import os folder_path = '........' for root, dirs, files in os.walk(folder_path, True): ...

  5. OpenCV遍历文件夹中所有图像

    今天尝试用OpenCV遍历文件夹中所有图像,并改变其尺寸大小(resize) 搜到这种方法connect,还没有尝试. 先试了一下简单的方法,首先,因为不知道文件名,比较麻烦. 最开始得到的图像如下 ...

  6. 遍历文件夹(含子文件夹)方法

    做法基本上有2大类: ① 经典Dir ② FSO 即 Scripting. File System Object 的[文件系统对象]脚本方法. 一开始可能Dir方法较为普遍,但随着水平的提高,应用FS ...

  7. xml遍历文件夹vector_怎么统计指定文件夹下含有.xml格式的文件数目

    如何统计指定文件夹下含有.xml格式的文件数目?如题 ------解决思路----------------------Directory.GetFiles(@"路径", " ...

  8. linux遍历目录删除指定文件,利用shell脚本遍历文件夹内所有的文件并作整理统计的方法-linux删除文件夹...

    本篇文章扣丁学堂Linux培训小编给读者们分享一下利用shell脚本遍历文件夹内所有的文件并作整理统计的方法,文章具有很好的参考价值,感兴趣的小伙伴就随小编来了解一下吧. 环境: Ubuntu下采用s ...

  9. ASP.NET2.0 遍历文件夹下所有图片【月儿原创】

    ASP.NET2.0 遍历文件夹下所有图片 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.4 1.以下目录有若干图片(都是 ...

最新文章

  1. POJ--2391--Ombrophobic Bovines【分割点+Floyd+Dinic优化+二分法答案】最大网络流量
  2. 表格内部的文本对齐类
  3. 【Python刷题】_2
  4. 2021-04-09 linux的shell脚本简单教程
  5. python memory usage_Python Pandas Index.memory_usage()用法及代码示例
  6. 有效的字母异位词---简单
  7. 网络故障排除连载之七:设备兼容性故障排除
  8. php简单的mysql类_超简单php mysql数据库查询类
  9. Linux实验四:编译和调试工具的使用
  10. 必须掌握的八个cmd命令行
  11. 费纸箱手工制作机器人_环保手工:怎么把纸箱废物利用制作立体小猫(步骤图解)...
  12. 痱子粉(滑石粉)消除升降车窗异响;牙膏妙用( 消除雨刷异响,除浅划痕与污迹)
  13. 驾校考试科目二完整流程
  14. 中考计算机考试评分标准,2016年中考英语作文的评分标准及评分细则(最新)
  15. JVM性能调优(4)——性能调优工具
  16. 并注册烧写钩子 获取启动介质类型_一种基于USB烧写的数据传输方法与流程
  17. 数据库 ----- 实验三:SQL的查询
  18. ROC曲线的含义以及画法
  19. 2007上海户口评分标准
  20. 电视机画质问题--PQ问题

热门文章

  1. GNU Radio Stream Tags
  2. 菲律宾德拉斯大学计算机专业,2020年菲律宾大学以及各专业排行榜
  3. 基于ie内核,浏览器自带flash插件
  4. 博客主题用腻了?来试试赛博朋克 2077 主题吧!
  5. WEB网页短信平台移讯云短信系统
  6. Spring Cloud微服务开发笔记4——Ribbon框架使用方法
  7. 2g限制 outlook_OutLook超出2G大小限制的 PST 和 OST 的解决方法-邮件备份法
  8. python中的注释行和注释块
  9. php5.1.6下载,phpnow1 PHPnow 简体中文免费版 V1 5 6 下载
  10. 分享一些优秀的思维导图作品