概述
java 使用File类描述不同平台的 文件系统 。在Windows中,文件系统主要由“磁盘分区”,“目录”,“文件”三者组成,三者均可以用file类描述。
能干嘛?
新建,删除,重命名 目录/文件
不能 访问文件内容的本身,访问文件内容需要输入/输出流本身。
注意能创建具体的文件。
字段
File类的这些字段与系统有关路径的分隔符有关。
还需注意相对路径与绝对路径的问题。
常用方法
构造方法
其中常用的是:
File file = new File("文件或目录名");
获得了一个File对象,就Windows来说,可能是一个 目录/文件/磁盘分区
其他方法
(根据api文档列出了大部分,感觉想要用到某个方法的时候先想到的是中文,所以根据目的整理了一下,方便查看)
目的 | 方法名 | 返回值 |
---|---|---|
创建目录 | mkdir | boolean:是否成功 |
创建文件 | createNewFile | boolean:不存在则创建,返回true。文件已存在则返回false |
删除文件或目录 | delete | boolean:操作结果 |
文件或目录是否存在 | exists | boolean:是否存在 |
获取绝对路径 | getAbsolutePath | String:路径名 |
获取分区总空间 | getTotalSpace | long:字节数量 |
获取分区剩余空间 | getFreeSpace | long:字节数量 |
获取分区已用空间 | getUsedSpace | long:字节数量 |
判断文件是否可读 | canRead | boolean:是否可读 |
判断文件是否可写 | canWrite | boolean:是否可读 |
是否为文件 | isFile | boolean:判断结果 |
是否为目录 | isDirectory | boolean:判断结果 |
是否为隐藏的文件或目录 | isHidden | boolean:判断结果 |
最后修改时间 | lastModified | long:文件最后修改时间 |
文件长度 | length | long:字节数量 |
列出目录的子目录和文件 | listFiles | File[] 文件的子目录或文件 |
列出所有磁盘分区 | listRoots | File[] 磁盘分区 |
其他 |
以上方法参数均为空
其他方法
- toString返回抽象路径名的字符串
- renameTo重命名
- 设置读写权限的方法(上面有判断读写权限的方法)
- 与URL,URI相关方法
关于文件创建
File file = new File("文件或目录名");
这样是创建了一个实例对象,但并没有在磁盘上创建文件。
若需要,则用createNewFile方法
File file = new File("c://temp//testFile1.txt");
//Create the file
if (file.createNewFile()){
System.out.println("File is created!");
}else{
System.out.println("File already exists.");
}
//Write Content
FileWriter writer = new FileWriter(file);
writer.write("Test data");
writer.close();
(此段代码来自其他作者,但我找不到信息了。。。侵删)