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文件类中的其他方法实现。推荐文章