File类文件、目录增删判断获取基本操作
package com.it.file;
import java.io.File;
import java.io.IOException;
/**
* @Date 2019/8/9 19:54
* @Created by hfh
* @Description TODO
* File类的文件以及路径增删查 获取信息操作
*/
public class FileTest {
public static void main(String[] args) throws IOException {
//fun();
fun2();
}
//文件操作
public static void fun() throws IOException {
//创建对象
File file = new File("zhejun.txt");
//创文件
if (!file.exists()){//文件不存在
boolean b = file.createNewFile();
System.out.println("结果:"+b);
}else {
System.out.println("文件已存在!");
}
//文件删除两种方式
//file.delete();
//file.deleteOnExit();
//文件判断
System.out.println("是否可读"+file.canRead());
System.out.println("是否可写"+file.canWrite());
System.out.println("是否可执行"+file.canExecute());
System.out.println("是否已隐藏"+file.isHidden());
System.out.println("是否绝对路径"+file.isAbsolute());
System.out.println("是不是文件"+file.isFile());
//获取文件信息
System.out.println("父目录"+file.getParent());
System.out.println("标准路径"+file.getCanonicalPath());
System.out.println("文件名"+file.getName());
System.out.println("路径"+file.getPath());
}
//目录操作
public static void fun2() throws IOException {
//新建对象
File dir = new File("aaa\\bbb\\ccc");
//新建目录
if (!dir.exists()){
boolean b = dir.mkdirs();//mkdir()只可创建单个目录
System.out.println("创建结果:"+b);
}else {
System.out.println("目录已存在");
}
//删除
//dir.deleteOnExit();
//dir.delete();//只删除最内层目录
//判断
System.out.println("是否为目录:"+dir.isDirectory());
System.out.println("是否为文件"+dir.isFile());
System.out.println("是否绝对路径"+dir.isAbsolute());
System.out.println("是否影藏"+dir.isHidden());
//获取
System.out.println("获取路径"+dir.getPath());
System.out.println("获取名字"+dir.getName());
System.out.println("获取标准路径"+dir.getCanonicalPath());
System.out.println("获取父目录"+dir.getParent());
System.out.println("获取绝对路径"+dir.getAbsolutePath());
//系统根目录
File[] files = File.listRoots();
for (File file : files) {
System.out.println(file);
}
//获取目录和子目录
File mydir = new File("d:\\wo");
File[] list = mydir.listFiles();
for (File file : list) {
System.out.println(file.toString());
}
}
}
关于路径问题
//路径问题测试
String property = System.getProperty(“user.dir”);//程序当前路径
System.err.println(property);
String separator = File.separator;
System.err.println(separator);//就是根据操作系统不同转译成不同的文件分隔符。