学习日记(Java_File)

对于File的封装

File封装的并不是一个真正存在的文件,仅仅是一个路径名而已,是否真是存在这个文件并不重要,因为要通过具体的操作把这个路径内容转换为具体存在的

File的构造方法

File f1 = new File("路径名");
File f2 = new File("父路径名","子文件名");
File f3 = new File(f1,"子路径名");
System.out.println(f1);           //这里输出f1的路径名

File类的创建、删除、判断、获取方法

System.out.println(f1.createNewFile());        //真实的创建文件,但是不会创建目录,成功创建输出true
System.out.println(f1.mkdir());                //创建一个目录
System.out.println(f1.mkdirs());                //创建多级目录

package file_study;

import java.io.File;
import java.io.IOException;

public class fileDemo001 {
    public static void main(String[] args) throws IOException {
        File f1 = new File("cc\\ss");
        System.out.println(f1.mkdirs());
        File f2 = new File("cc\\ss\\gg.txt");
        System.out.println(f2.createNewFile());
    }
}

System.out.println(f1.delete);                删除绝对/相对路径下最后一个及其包含的文件

System.out.println(f1.isDirectory());            //判断是否为文件夹(目录)
System.out.println(f1.isFile());                //判断是否为文件
System.out.println(f1.exists());                //判断文件是否存在

System.out.println(f1.getAbsolutePath());        //获取绝对路径
System.out.println(f1.getName());            //获取路径名表示的文件夹或者文件名称
System.out.println(f1.getPath());            //将路径转换为字符串
File[] FileArray = f1.listFiles();                //获得路径名下的所有文件和目录,并且放在数组中

综合案例

FileDemo002.java
package file_study;

import java.io.File;
import java.io.IOException;

public class FileDemo002 {
    public static void main(String[] args) throws IOException {
        // 创建aaa目录
        File directory = new File("aaa");
        if (directory.mkdir()) {
            System.out.println("目录创建成功");
        } else {
            System.out.println("目录创建失败");
        }

        // 在目录下创建多个文件
        for (int i = 1; i <= 5; i++) {
            File file = new File(directory, "demo" + i + ".txt");
            if (file.createNewFile()) {
                System.out.println("文件 " + file.getName() + " 创建成功");
            } else {
                System.out.println("文件 " + file.getName() + " 创建失败");
            }
        }

        // 验证文件或目录是否存在
        System.out.println("目录aaa是否存在:" + directory.exists());
        File fileToCheck = new File(directory, "demo1.txt");
        System.out.println("文件demo1.txt是否存在:" + fileToCheck.exists());

        // 删除某个文件
        boolean fileDeleted = fileToCheck.delete();
        if (fileDeleted) {
            System.out.println("文件demo1.txt删除成功");
        } else {
            System.out.println("文件demo1.txt删除失败");
        }

        // 判断目录是否为空
        System.out.println("目录是否为空:" + (directory.listFiles().length == 0));

        // 判断是否是文件或目录
        System.out.println("是否是文件:" + directory.isFile());
        System.out.println("是否是目录:" + directory.isDirectory());

        // 统计某种文件的个数并打印
        int txtFileCount = 0;
        File[] files = directory.listFiles();
        if (files != null) {
            for (File file : files) {
                if (file.getName().endsWith(".txt")) {
                    txtFileCount++;
                }
            }
        }
        System.out.println("txt文件个数:" + txtFileCount);
    }
}

知识点补充(遍历数组的三种方式)

传统方式

int[] arr = {1,2,3,4};
for(int i=0;i<4;i++){
    System.out.println(arr[i]);
}

快捷方式

int[] arr = {1,2,3,4};
for(int i:arr){
    System.out.println(i);
}
Arrays工具类中toString静态方法遍历
int[] arr = {1,2,3,4};
System.out.println(Arrays.toString(arr));
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值