文件相关知识

这篇博客介绍了Java中如何创建、操作文件和目录。通过File类的不同构造方法创建文件对象,然后使用createNewFile()创建文件,以及利用exists()、delete()检查和删除文件。此外,还详细讲解了获取文件信息、创建目录(mkdir和mkdirs)以及删除目录的方法,为Java文件系统操作提供了全面的示例。
摘要由CSDN通过智能技术生成

文件

是保存数据的地方,视频、音频、文字…

文件流

文件在程序中是以流的形式来操作的

**流:**数据在数据源(文件)和程序(内存)之间经历的路径

**输入流:**数据从数据源(文件)到程序(内存)的路径

**输出流:**数据从程序(内存)到数据源(文件)的路径

常用文件操作

  • 创建文件对象相关构造器和方法

方法:

  1. new File(String pathname)//根据路径构建一个File对象
  2. new File(File parent,String child)//根据父目录文件+子路径构建
  3. new File(String parent,String child)//根据父目录+子路径构建

creatNewFile 创建新文件

package com.zj;

import org.junit.jupiter.api.Test;

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

public class FileCreate {
    public static void main(String[] args) {

    }
    //方式1 new File(String pathname)
    @Test
    public void create01(){
        String filePath = "E:\\JavaStudy\\news1.txt";
        File file = new File(filePath);
        try {
            file.createNewFile();
            System.out.println("文件创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //方式2 new File(File parent,String child)//根据父目录文件+子路径构建
    @Test
    public void create02(){
        File parentFile = new File("E:\\JavaStudy");
        String filename = "news2.txt";
        //这里的file对象,在Java程序中,只是一个对象
        // 只有执行了createNewFile方法,才会真正的在磁盘创建该文件
        File file = new File(parentFile, filename);

        try {
            file.createNewFile();
            System.out.println("创建成功");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    //方式3 new File(String parent,String child)//根据父目录+子路径构建
    @Test
    public void create03(){
        String parentPath = "E:\\JavaStudy";
        String filePath = "news3.txt";
        File file = new File(parentPath, filePath);

        try {
            file.createNewFile();
            System.out.println("创建成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  • 获取文件相关信息
package com.zj;

import org.junit.jupiter.api.Test;

import java.io.File;

public class FileInformation {
    public static void main(String[] args) {

    }
    //获取文件的信息
    @Test
    public void info(){
        //先创建文件对象
        File file = new File("E:\\JavaStudy\\news1.txt");

        //调用相应方法得到对应信息
        System.out.println("文件名="+file.getName());

        System.out.println("文件绝对路径="+file.getAbsolutePath());

        System.out.println("文件父级目录="+file.getParent());

        System.out.println("文件大小(字节)="+ file.length());

        System.out.println("文件是否存在="+ file.exists());

        System.out.println("是不是一个文件="+ file.isFile());

        System.out.println("是不是一个目录="+ file.isDirectory());

    }
}
  • 目录的操作和文件删除
  • mkdir创建一级目录、mkdirs创建多级目录、delete删除空目录或者文件
package com.zj;

import org.junit.jupiter.api.Test;

import java.io.File;

public class Directory {
    public static void main(String[] args) {

    }

    //判断D:\\news1.txt是否存在,如果存在就删除
    @Test
    public void m1(){
        String filePath = "E:\\JavaStudy\\news1.txt";
        File file = new File(filePath);

        if (file.exists()){
            if (file.delete()){
                System.out.println(filePath+"删除成功");
            }else{
                System.out.println(filePath+"删除失败");
            }
        }else{
            System.out.println("该文件不存在");
        }
    }

    //判断D:\\demo02是否存在,如果存在就删除,否则提示不存在
    //这里我们需要体会到,在Java编程中,目录也被当作文件
    @Test
    public void m2(){
        String filePath = "D:\\demo02";
        File file = new File(filePath);

        if (file.exists()){
            if (file.delete()){
                System.out.println(filePath+"删除成功");
            }else{
                System.out.println(filePath+"删除失败");
            }
        }else{
            System.out.println("该目录不存在。。。");
        }
    }

    //判断D:\\demo02\\a\\b\\c是否存在,如果存在就删除,否则就创建 创建多级目录用mkdirs(),创建一级目录用mkdir()
    @Test
    public void m3(){
        String directoryPath = "D:\\demo02\\a\\b\\c";
        File file = new File(directoryPath);

        if (file.exists()){
            System.out.println(directoryPath+"存在...");
        }else{
            if (file.mkdirs()) {
                System.out.println(directoryPath+"创建成功。。。");
            }else{
                System.out.println(directoryPath+"创建失败。。。");
            }
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值