File常用的方法操作、在磁盘上创建File、获取指定目录下的所有文件、File文件的重命名、将数据写入File文件

简介: 这篇文章介绍了Java中`File`类的常用方法操作,包括文件和目录路径名的抽象表示、构造方法、常用方法以及代码实例。文章通过具体的代码示例,展示了如何在磁盘上创建文件和目录、处理目录存在的情况、文件重命名、获取指定目录下的所有文件以及将数据写入文件等操作。每个代码实例都配有测试结果截图,帮助读者更好地理解和掌握`File`类的应用。

文章目录

  • 1、基本介绍
  • 2、构造方法
  • 3、常用的方法
  • 4、代码实例
    • 4.1 创建文件和目录(目录不存在)
      • 4.1.1 代码
      • 4.1.2 测试结果
    • 4.2 测试目录存在的情况、直接写绝对的路径名
      • 4.2.1 代码实例
      • 4.2.2 测试结果
    • 4.3 将原文件重新命名
      • 4.3.1 代码实例
      • 4.3.2 测试结果
    • 4.4 获取一个目录下的所有文件、同时重命名文件名()
      • 4.4.1 代码实例
      • 4.4.2 测试结果
    • 4.5 将数组的数据写入一个文件中
      • 4.5.1 代码实例
      • 4.5.2 测试结果

1、基本介绍

文件和目录路径名的抽象表示。
在这里插入图片描述

2、构造方法

在这里插入图片描述

3、常用的方法

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4、代码实例

4.1 创建文件和目录(目录不存在)

4.1.1 代码

package com.autobranch.ibank.standardfeatures.TestFile;

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

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

            File dir = new File("E:\\data\\sps\\ZYZ");

            if (!dir.exists()) {
                System.out.println("成功创建文件目录");
                dir.mkdirs();
            } else {
                System.out.println("文件目录已经创建");
            }

            File f = new File(dir, "yuzhu.txt");

            if (!f.exists()) {
                System.out.println("成功创建文件");
                f.createNewFile();
            } else {
                System.out.println("此文件已经创建");
            }

        } catch (IOException e) {
            System.out.println(e);
        }
    }
}

4.1.2 测试结果

在这里插入图片描述
在这里插入图片描述

4.2 测试目录存在的情况、直接写绝对的路径名

4.2.1 代码实例

package com.autobranch.ibank.standardfeatures.TestFile;

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

public class MyTestFile {
    public static void main(String[] args) throws IOException {

        File dir = new File("E:\\data\\sps\\ZYZ\\zheneng.xml");
        if(!dir.exists()){
            dir.createNewFile();
        }
        System.out.println(dir.exists());
        System.out.println(dir.getName());

    }
}

4.2.2 测试结果

在这里插入图片描述
在这里插入图片描述

4.3 将原文件重新命名

4.3.1 代码实例

package com.autobranch.ibank.standardfeatures.TestFile;

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

public class addFileTest {
    public static void main(String[] args)  {
        //前提是目录已经存在
//        File file = new File("E:\\data\\sp\\FSN\\dy.xml");
//        System.out.println(file.getAbsolutePath());
//        System.out.println(file.exists());

        //想命名的原文件的路径
        File file = new File("E:\\data\\sps\\ZYZ\\yuzhu.txt");

        //将原文件更改为E:\data\sp\FSN\2022-7-5.xml,其中路径是必要的。注意
        File file1 = new File("E:\\data\\sps\\ZYZ\\2022-7-4.txt");

       boolean flag =  file.renameTo(file1);
       if(flag){
           System.out.println("重命名成功");
       }else{
           System.out.println("重命名失败");
       }

    }

}

4.3.2 测试结果

在这里插入图片描述

在这里插入图片描述

4.4 获取一个目录下的所有文件、同时重命名文件名()

4.4.1 代码实例

package com.autobranch.ibank.standardfeatures.TestFile;

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;

public class forFileTest {

    //获取系统当前时间
    public static String getTime(){
        Date day=new Date();
//        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");

        return df.format(day);

    }

    //获取指定的后缀文件

    //获取文件名(不带后缀) String test = f.getName().substring(0,f.getName().lastIndexOf("."));

    public static void main(String[] args) {
        String newFileNamePrefix = null;
        newFileNamePrefix = forFileTest.getTime();

        System.out.println("获取到的时间前缀"+newFileNamePrefix);
        String sourceFileDir = "E:\\data\\sps\\ZYZ";
        File sourceDir = new File(sourceFileDir);

        File[] sourceFiles = sourceDir.listFiles();
//        System.out.println(sourceFiles.length); 该目录下的文件个数
        for (File sourceFile : sourceFiles) {
//            System.out.println(sourceFile.getName());  带有后缀

            //1、获取文件名、不带后缀
            String test = sourceFile.getName().substring(0,sourceFile.getName().lastIndexOf("."));
            System.out.println(test);

            //2、组合新的文件名
            String newFileName = newFileNamePrefix+test;
            System.out.println("组合后的前缀:"+newFileName);
        }
    }
}

4.4.2 测试结果

在这里插入图片描述

4.5 将数组的数据写入一个文件中

4.5.1 代码实例

package com.autobranch.ibank.standardfeatures.TestFile;

import java.io.BufferedWriter;
import java.io.FileWriter;

public class WritingStringArrayToFile {
    public static void main(String args[]) throws Exception {
        String[] myArray = {"JAVA", "C", "PHP", "数据结构", "MySQL", "你好 world"};
        BufferedWriter writer = new BufferedWriter(new FileWriter("E:\\data\\sps\\ZYZ\\2022-7-4.txt", false));
        for(int i = 0; i < myArray.length; i++) {
            writer.write(myArray[i].toString());
            writer.newLine();
        }
        writer.flush();
        System.out.println("Data Entered in to the file successfully");
    }
}

4.5.2 测试结果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章
|
6月前
|
C#
C# 文件操作(全部) 追加、拷贝、删除、移动文件、创建目录
C# 文件操作(全部) 追加、拷贝、删除、移动文件、创建目录
85 0
|
6月前
|
编译器 API C语言
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
C/C++ 获取文件名的方法:分享一些实用的获取文件名的方法和技巧(__FILE__,__builtin_FILE(),__BASE_FILE__等)
607 0
|
6月前
|
弹性计算 运维 Shell
批量将txt 文件修改为doc 文件
【4月更文挑战第29天】
48 1
6.4.4 观察文件类型:file
6.4.4 观察文件类型:file
44 0
指定的 filePath 文件不存在
指定的 filePath 文件不存在
51 2
File类详解(获取文件名称、大小、路径、创建等)
File类详解(获取文件名称、大小、路径、创建等)
1161 1
|
程序员
【CODETOOL】文件比较Beyond Compare使用介绍
Beyond Compare可以很方便地对比出两个文件夹或者文件的不同之处,相差的每一个字节用颜色加以表示,查看方便,支持多种规则对比。
562 0
【CODETOOL】文件比较Beyond Compare使用介绍
|
消息中间件 JavaScript 小程序
九种方式,教你读取 resources 目录下的文件路径
本文中提供了九种方式获取resources目录下文件的。其中打印文件的方法如下
|
Python
6.2 file 写文件
#!/usr/bin/env python # -*- coding:utf-8 -*- #@Time      :2017/10/27 22:15 #@Author    :zhouyuyao #@File      :file_write.
691 0
|
C# Windows 开发工具