java常用类之File类

java常用类之File类

File类

  • 注意:注:Windows 的路径分隔符使用反斜线“\”,而 Java 程序中的反斜线表示转义字符,所以如果需要在 Windows 的路径下包括反斜线,则应该使用两条反斜线或直接使用斜线“/”也可以。Java 程序支持将斜线当成平台无关的路径分隔符。

一、File类

  • java.io.File类∶代表文件和目录。在开发中,读取文件、生成文件、删除文件、修改文件的属性时经常会用到File类。File类java.io包中唯一代表磁盘文件本身的对象。
  • File类不能访问文件内容本身,如果需要访问文件内容本身,则需要借助输入输出流。
  • 里面的方法查看:File类帮助文档

二、File类中的方法

File提供了三种形式的构造方法

方法 参数描述
File(String path) 如果 path 是实际存在的路径,则该 File 对象表示的是目录;如果 path 是文件名,则该 File 对象表示的是文件。
File(String path, String name) path 是路径名,name 是文件名
File(File dir, String name) dir 是路径对象,name 是文件名
public class Filetest {
    public static void main(String[] args) {
        File file = new File("D:\\date\\JavaSE\\Java基础语法\\src\\Common\\test.java");
        System.out.println(file);
    }
}
//方法的运用
public class Filetest {
    public static void main(String[] args) {
        File file = new File("D:\\date\\JavaSE\\Java基础语法\\src\\Common\\Clonetest.java");
        System.out.println(file);
        System.out.println(file.exists());
        System.out.println(file.canWrite());
        System.out.println(file.length());
        System.out.println(file.isDirectory());
    }
}
  • File类有两个常用常量:pathSeparator和separator,源码的定义如下
private static final FileSystem fs = DefaultFileSystem.getFileSystem(); //得到文件系统

//指的是分隔连续多个路径字符串的分隔符,Windows 下指;。例如 java -cp test.jar;abc.jar HelloWorld
public static final char pathSeparatorChar = fs.getPathSeparator(); //得到分割符
public static final String pathSeparator = "" + pathSeparatorChar;  //将分隔符转化为字符串,下同

//用来分隔同一个路径字符串中的目录的,Windows 下指/。例如 C:/Program Files/Common Files
public static final char separatorChar = fs.getSeparator();
public static final String separator = "" + separatorChar;

三、创建、查看、修改、删除文件

File 类不仅可以获取已知文件的属性信息,还可以在指定路径创建文件,以及删除一个文件。创建文件需要调用 createNewFile() 方法,删除文件需要调用 delete() 方法。无论是创建还是删除文件通常都先调用 exists() 方法判断文件是否存在。

假设要在D盘上创建一个 test.txt 文件,程序启动时会检测该文件是否存在,如果不存在则创建;如果存在则先删除它再创建。

在操作文件时一定要使用 File.separator 表示分隔符。在程序的开发中,往往会使用 Windows 开发环境,因为在 Windows 操作系统中支持的开发工具较多,使用方便,而在程序发布时往往是直接在 Linux 或其它操作系统上部署,所以这时如果不使用 File.separator,则程序运行就有可能存在问题。关于这一点我们在以后的开发中一定要有所警惕。

//创建和删除
package Common;

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

public class CreateAndDeletFile {
    public static void main(String[] args) {
        //File file = new File("D:\\test.txt");
        File file = new File("D:"+File.separator+"test.txt");
        //以上是两种都是可以在Windows上创建文件的方式。
        if (file.exists()){
            file.delete();
            System.out.println("File is Deleted");
        }
        try {
            file.createNewFile();
        } catch (IOException e) {
            System.out.println("File is Created");
        }
        
    }
}
  • 说明:其他查看或者修改都可以通过File文件类中的其他方法实现。推荐文章
posted @ 2022-01-18 19:52  Devin-Y  阅读(238)  评论(0编辑  收藏  举报