java基础相关6
File类
File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径)
使用File可以做到:
- 访问其表示的文件或目录的属性信息,例如:名字,大小,修改时间等等
- 创建和删除文件或目录
- 访问一个目录中的子项
但是File不能访问文件数据.
创建File时要指定路径,而路径通常使用相对路径。 相对路径的好处在于有良好的跨平台性。 **"./"**是相对路径中使用最多的,表示"当前目录",而当前目录是哪里 取决于程序运行环境而定,在idea中运行java程序时,这里指定的 当前目录就是当前程序所在的项目目录。
可用操作
File file = new File("./test.txt");
String name = file.getName();
System.out.println(name); //test.txt
//返回文件大小 单位是字节
long length = file.length();
System.out.println("大小:"+length + "字节"); //大小:14字节
//是否可读
boolean cr = file.canRead();
//是否可写
boolean cw = file.canWrite();
//是否隐藏
boolean ih = file.isHidden();
//获取绝对路径
System.out.println(file.getAbsolutePath()); //D:\...
创建一个新文件
boolean exists()判断当前File表示的位置是否已经实际存在该文件或目录
createNewFile()方法,可以创建一个新文件
//在当前目录下新建一个文件:test.txt
File file = new File("./test.txt");
//boolean exists()判断当前File表示的位置是否已经实际存在该文件或目录
if(file.exists()){
System.out.println("该文件已存在!");
}else{
file.createNewFile();//将File表示的文件创建出来
System.out.println("文件已创建!");
}
删除一个文件
这个操作会直接删除文件,没有挽回的余地,不会放在回收站里可以还原。
File file = new File("test.txt");
if(file.exists()){
file.delete();
System.out.println("文件已删除!");
}else{
System.out.println("文件不存在!");
}
创建目录
mkDir():创建当前File表示的目录
mkDirs():创建当前File表示的目录,同时将所有不存在的父目录一同创建
File dir = new File("./a/b/c/d/e/f");
if(dir.exists()){
System.out.println("该目录已存在!");
}else{
// dir.mkdir();//创建目录时要求所在的目录必须存在
dir.mkdirs();//创建目录时会将路径上所有不存在的目录一同创建
System.out.println("目录已创建!");
}
删除目录
delete()方法可以删除一个目录,但是只能删除空目录。
File dir = new File("demo");
// File dir = new File("a");
if(dir.exists()){
dir.delete();//delete方法删除目录时只能删除空目录
System.out.println("目录已删除!");
}else{
System.out.println("目录不存在!");
}
访问一个目录中的所有子项
listFiles 可以访问一个目录中的所有子项
//获取当前目录中的所有子项
File dir = new File(".");