java 文件的操作
需导包import java.io.File;
1.文件构造器
文件构造器是用来创建文件对象的,我们在创建文件对象时要保证文件路径正确,下面代码中是四个创建文件对象的构造方法。
//文件的构造器是用来创建文件对象的, 我们创建文件对象的时候要保证文件路径正确
File file = new File("D:\\tx.txt");
System.out.println(file.getName());
File file1 = new File("D:\\aaa", "tet.txt");
System.out.println(file1.getName());
//java中的File类的对象可以代表目录,也可以代表文件
File file2 = new File("D:\\aaa");
System.out.println(file2.getName());
//根据目录的文件对象创建一个文件
File file3 = new File(file2, "tet.txt");
System.out.println(file3.getName());
2.创建文件与目录
在该路径下(D:\C语言)创建一个哦豁.txt文件,通过调用createNewFile()方法来实现文件的创建,它是boolean类型,返回true表示创建成功,false失败。
//文件构造器,创建文件对象
File rt = new File("D:\\C语言\\哦豁.txt");
boolean ty = rt.createNewFile();//创建文件
根据给出已有路径创建目录,mkdir()方法只能一次创建一个目录,而mkdirs()方法可实现多目录的创建。这两个方法也是boolean类型。
注意:创建目录一定是要在已有的基础上创建。
//创建目录对象
File et = new File("D:\\C语言\\out");
boolean fr = et.mkdir();
//多级目录的创建
File ed = new File("D:\\C语言\\oup\\ter\\sss\\fr.txt");
boolean cd = ed.mkdirs();
3.文件的(目录)删除
根据文件的路径删除。delete()方法可实现文件与目录的删除,若删除目录时,在被删除的目录下有文件(只要不是空目录)那么则会删除失败,返回false。
目录的删除只能一次删除一个。
要保证路径的绝对正确性,否则删除失败。
//文件的删除
File sd = new File("D:\\C语言\\哦豁.txt");
//程序(文件)删除不走回收站
boolean gt = sd.delete();
//删除路径最后一级,如果该目录有文件,则会删除失败(只有空目录才能删除)
File we = new File("D:\\C语言\\out");
//程序(文件)删除不走回收站
boolean hu = sd.delete();
4.文件的获取
绝对路径:指从盘符开始的路径。
相对路径:指从当前路径开始的路径。
length()方法的返回值类型为long。
File rt = new File("D:\\C语言\\哦豁.txt");
//获取文件的绝对路径
String de = rt.getAbsolutePath();
System.out.println("该文件的绝对路径是:"+de);
//获取文件的相对路径
File et = new File("哦豁.txt");
String path = et.getPath();//获取路径
System.out.println("该文件的相对路径是:"+path);
//获取文件名
String name = rt.getName();
System.out.println(name);
//获取文件的大小,单位是字节
long t = et.length();
System.out.println("该文件有"+t+"个字节");
//获取最后一次修改该文件的时间,单位为毫秒
long time = et.lastModified();
System.out.println("最后一次修改该文件的时间为:"+time);
获取当前目录下的子文件对象
//获取当前目录下的子文件对象
File ct = new File("D:\\javazuoye");
File[] arr = ct.listFiles();
for(File d : arr){
System.out.println(d);
}
5.文件的判断
判断文件是否存在,是否是文件或者目录。
File rt = new File("D:\\C语言\\哦豁.txt");
//判断文件(目录)是否存在
boolean yu = rt.exists();
System.out.println(yu);
//判断当前文件对象是否是文件,如果是则返回true,否则(是目录)返回false、
boolean qw = rt.isFile();
System.out.println(qw);
//判断当前文件对象是否是目录,如果是则返回true,否则(是文件)返回false、
boolean sq = rt.isDirectory();
System.out.println(sq);
判断文件是否可写,可读,是否是隐藏的
File arr = new File("D:\\C语言\\ooo.txt");
//判断当前文件是否可读
boolean t = arr.canRead();
System.out.println(t);
//判断当前文件是否可写
boolean f = arr.canWrite();
System.out.println(f);
//判断当前文件是否隐藏的
boolean v = arr.isHidden();
System.out.println(v);