竹韵清风 2013-11-11 01:02 采纳率: 0%
浏览 1390

遍历指定盘符下所有文件

import java.io.File;

/**

  • @author * *尝试遍历每个文件夹,并列出所有内容 *分析:
  • 1.获取文件件对象
  • 2.判断是否为文件夹
  • 3.是 继续判断 是否为文件夹
  • 4.否,则打印所有文件的文件名
    *使用遍历
    */
    public class BianliWenjianjia {
    public static void main(String []args){
    // File file=new File("E:\inst\3-图形图像\素材2011\eclipse");
    File file=new File("F:\");
    file(file,0);
    }
    public static void file( File file,int i) {
    //创建文件对象,指定根目录
    System.out.println(getSpace(i)+file.getName());
    //定义一个变量用于记录目录层次
    i++;

    //获取文件对象

        File [] fileArr=file.listFiles();
    
        for(int  index=0;index<fileArr.length;index++)
    

    // for(File fileCon:fileArr)
    {//遍历
    if(fileArr[index].isDirectory())
    // if(fileCon.isDirectory())
    {
    file(fileArr[index],i);
    // file(fileCon,i);
    }
    else
    {
    System.out.println(getSpace(i)+fileArr[index].getName());
    // System.out.println(getSpace(i)+fileCon.getName());
    }
    }
    if(file.getParentFile()==file)
    return ;

    }

    /**

    • @param i 目录层次
    • @return 空格字符
      */
      private static String getSpace(int i) {

      StringBuffer sb=new StringBuffer();
      sb.append("|--");
      for(int a=0;a<i;a++)
      {
      sb.insert(0,"| ");
      }
      return sb.toString();
      }

}
在这个程序中若指定具体某个文件夹就可以成功遍历,但是指定具体盘符时就会报java.lang.NullPointerException,本人开始以为是系统权限问题,以管理员权限运行也出现同样的错误,所以向各位前辈请教!请帮忙分析下这是什么原因!学生在此谢过了!

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-12-09 21:57
    关注

    所有内容均由人工智能模型输出,其内容的准确性和完整性无法保证,不代表我的态度或观点。
    (讯飞星火专栏,V3.0版本,2023.10.24)


    该回答引用讯飞星火认知大模型,仅提供参考,不保证完全正确
    这个程序在指定盘符时会报java.lang.NullPointerException,可能是因为指定的盘符不存在或者没有访问权限。请确保指定的盘符存在并且你有访问该盘符的权限。


    你可以尝试以下方法来解决这个问题:

    1. 检查指定的盘符是否存在。你可以在命令行中输入dir F:\(假设你要遍历的盘符是F盘)来查看F盘是否存在。如果不存在,你需要更改为存在的盘符。

    2. 确保你有访问指定盘符的权限。你可以右键点击文件资源管理器中的盘符,选择“属性”,然后在“安全”选项卡中检查你的用户账户是否具有访问权限。如果没有,你需要为你的用户账户添加相应的权限。

    3. 如果你仍然遇到问题,可以尝试以管理员身份运行程序。在Windows系统中,你可以右键点击程序的可执行文件,然后选择“以管理员身份运行”。

    评论

报告相同问题?

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序