java笔记
  • Java语言概述
  • 入门
    • ubuntu安装
    • window配置环境变量
    • 编写HelloWorld
    • 注释
    • 编程风格
    • 进制与字符编码
    • 键盘录入
  • java基础
    • 数据类型
    • 运算符与类型转换
    • 控制语句
      • 选择结构(if-else/swtich)
      • 循环结构(while/do-while/for)
    • 数组
      • 数组基础
      • 数组进阶
    • 面向对象
      • 基础
        • 面向过程和面向对象
        • 类与对象
        • 构造方法
        • 垃圾回收机制garbage collection
        • 关键字
      • 进阶
        • 封装
        • 继承
        • 多态
        • 抽象
        • 内部类
      • 高级特性
        • String类
        • 枚举
        • 注解
    • 异常
    • 常用类
      • 包装类
      • String相关类
      • 时间类
      • 数学类
      • File类
      • 枚举类
    • 单个字符操作(Character 类)
    • Java字符串
      • String
      • StringBuilder
      • StringBuffer
    • Java集合
    • Java 泛型
    • Java解惑
  • 附录:git
  • 附录:转义字符
  • maven
    • pom.xml
    • maven安装
  • 其他
    • BeanUtils
  • java与php语法对比
  • idea
  • 开发记录
  • ExecutorService 异步线程池
Powered by GitBook
On this page
  • 介绍
  • 递归打印目录结构

Was this helpful?

  1. java基础
  2. 常用类

File类

介绍

概述:文件的增删改查操作。来自java.io包。

示例:

package com.itcode.demo4;  


import java.io.File;  
import java.io.IOException;  
import java.text.ParseException;  
import java.util.Random;  

/** 
 * @Auther: 成都码到功成学员 
 * @Description: 
 * File类 
 */  
public class TestFile {  
    public static void main(String[] args) throws ParseException, IOException {  
//        File file = new File("d:/a.txt");或  
        File file = new File("d:\\a.txt");  
        System.out.println(file);//输出文件路径  
        file.renameTo(new File("a.md"));//改名  
        // 查看项目当前路径  
        System.out.println(System.getProperty("user.dir"));  
        // 项目当前路径里面创建文件  
        File f = new File("b.txt");  
        f.createNewFile();  
        // 文件类常用方法,是否存在,是否是文件/目录、长度等等  
        System.out.println(f.exists());  
        System.out.println(f.isFile());  
        System.out.println(f.isDirectory());  
        System.out.println(f.length());  
        System.out.println(f.lastModified());  
        System.out.println(f.getAbsolutePath());  
        System.out.println(f.delete());  

        // 创建单级mkdir多级mkdirs目录  
        System.out.println();  
        File f1 = new File("d:/a/b/c/d");  
        f1.mkdirs();  

    }  
}

效果:

递归打印目录结构

示例:

package com.itcode.demo4;  


import java.io.File;  
import java.io.IOException;  
import java.text.ParseException;  

/** 
 * @Auther: 成都码到功成学员 
 * @Description: 
 * File类练习 
 */  
public class TestFile1 {  
    public static void main(String[] args) throws ParseException, IOException {  

        // 练习一  
//        File f = new File("d:/bb/a.txt");  
//        // 判断是否存在  
//        boolean live = f.exists();  
//        if(live){  
//            boolean del = f.delete();  
//            if (del){  
//                System.out.println("删除成功");  
//            }else{  
//                System.out.println("删除失败");  
//            }  
//        }else {  
//            // 创建  
//            boolean cre = true;  
//            try {  
//                // 如果目录不存在,就创建  
//                File dir = f.getParentFile();  
//                dir.mkdirs();  
//                cre = f.createNewFile();  
//                System.out.println("创建成功");  
//            }catch (IOException e){  
//                System.out.println("创建失败");  
//                e.printStackTrace();  
//            }  
//        }  
//        f.renameTo(new File("d:/bb/ab.txt"));//重命名  
//        System.out.println("###########################");  
        // 练习2 递归打印目录结果  
        File file = new File("D:\\BaiduNetdiskDownload\\java基础西安讲师惠雷雨");  
        printFileTree(file,0);//初始值为0  
    }  
    public static void printFileTree(File f, int level){  
        System.out.println(f.getName());  
        for (int i = 0; i < level; i++) {  
            System.out.print("-");  
        }  
        if(f.isDirectory()){  
            File[] files = f.listFiles();  
            for (File ff : files){  
                printFileTree(ff, level+1);  
            }  
        }  
    }  
}

效果:

Previous数学类Next枚举类

Last updated 5 years ago

Was this helpful?