
正文
Java之File文件类
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
package IoDemo;import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.util.Arrays;/**
* @Title:IODemo
* @Description:File类的使用
* @author Crazy-ZJ
* @data 2017年9月21日下午2:31:10
* @book 疯狂java讲义(第三版):
*/
public class IODemo {
public static void main(String[] args){
//File类表示一个文件或目录
/**
* 三种分隔符:
* 1."F:/test/test.txt" \ 本身表示转义所以不能使用\ 只能使用/
* 2."F:\\test\\test.txt" 如果非得要使用\ 就必须使用两个\即 \\ 这样才能表示一个\
* 3."F:"+File.separator+"test"+File.separator+"test.txt" 与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串。
*/
File f1 = new File("F:"+File.separator+"test"+File.separator+"test.txt");
if(!f1.exists()){//判断文件是否存在,f1这个对象已经创建是存在的
try{
f1.createNewFile();//createNewFile() 创建新的文件
System.out.println("文件创建成功!");
} catch(IOException e){//基本上所有的文件流操作都会报IOException异常
e.printStackTrace();
}
}
//isFile() 判断是否为文件 isDirectory()判断是否为文件夹
System.out.println("是否为文件夹:"+f1.isDirectory()); File f2 = new File("F:\\test\\test");//要删除这个文件夹,必须先删除文件夹中的文件,否者删除失败
boolean b = f2.delete();
System.out.println(b); String[] names = f2.list();//列出当前目录下的所有文件名
System.out.println(Arrays.toString(names)); File[] fs=f2.listFiles();//列出当前目录下的所有文件,以file对象返回
for(File f : fs){
System.out.println("文件名称:"+f.getName());
System.out.println("文件长度:"+f.length());
System.out.println("相对路径:"+f.getPath());
System.out.println("绝对路径:"+f.getAbsolutePath()); }// System.out.println("--------------");
//查找特定文件
File f5 = new File("F:\\test\\test");
/* File[] files = f5.listFiles(new FileFilter(){
@Override
public boolean accept(File pathname){
return pathname.getName().endsWith(".txt");
}
});*/
File[] files = f5.listFiles((pathname) -> pathname.getName().endsWith(".txt"));//lambda 表达式写法
System.out.println("-------------");
for(File f:files){
System.out.println(f.getName());
}
}
}
- File类:表示文件和目录名的抽象表示形式
- File类可以实现文件的创建,删除,重命名,得到路径,创建时间等操作,是唯一与文件相关的操作类。详见Java API
- File类的操作方法:
1.public static final String separator 表示路径分隔符 "\"
2.public File(String pathname) 构造File类实例,要传入路径
3.public boolean createNewFile()创建新的文件
4.public boolean delete() 删除文件
5.public boolean isDirectory()判断给定的路径是否是文件夹
6.public boolean isFile()判断给定的路径是否是文件
7.public String list() 列出文件夹中的文件
8.public File[] listFiles()列出文件夹中的所有文件
9.public boolean mkdir()创建新的文件夹
10.public boolean renameTo(File Test) 为文件重命名
11.public ling length()返回文件大小
12public getPath()路径名字符串






