/**
* File只能用于表示文件(目录)的信息(名称,大小等),不能用于文件内容的访问)
*/
public class EncodeFileDemo {
public static void main(String[] args) {
fileShowCreate();
}
private static void fileShowCreate() {
// 创建了个文件目录,就是文件夹
File file = new File("/Users/liuyan/IdeaProjects/BiliFengJia/src/a");
if (!file.exists()) {
try {
// 创建文件
// file.createNewFile();
// 如果文件夹不存在,创建文件夹,一级目录
file.mkdir();
// 多级目录
// file.mkdirs()
} catch (Exception e) {
e.printStackTrace();
}
}
// 是否是一个目录 没后缀名的就是目录 如果是目录或者目录不存在返回false
System.out.println(file.isDirectory());
// 是否是一个文件 有后缀名的就是文件
System.out.println(file.isFile());
// 打印的是文件的目录 /Users/liuyan/IdeaProjects/BiliFengJia/src/a
System.out.println(file.getAbsolutePath());
// 打印的是a这个目录的名,如果是文件就打印a文件的名字
System.out.println(file.getName());
// 该文件/文件夹的父目录 /Users/liuyan/IdeaProjects/BiliFengJia/src
System.out.println(file.getParent());
try {
//列出目录下所有,包括子目录里的文件
FileUtils.listDirectory(new File("/Users/liuyan"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
--------------------------------------------------*********************------------------------------------------
import java.io.File;
import java.io.IOException;
/**
* 列出file的一些常用操作,比如过滤,遍历等操作
*/
public class FileUtils {
/*列出指定目录下(包括其子目录)的所有文件)*/
public static void listDirectory(File dir) throws IOException {
if (!dir.exists()) {
throw new IllegalArgumentException("目录:" + "dir" + "不存在");
}
if (!dir.isDirectory()) {
throw new IllegalArgumentException(dir + "不是目录");
}
// dir.list(); 返回的是字符串数组,直接子的名称,不包含子目录下的内容
// String[] fileNames = dir.list();
// for (String string:fileNames) {
// System.out.println(string);
// }
// 列出目录下所有内容,包括子目录里的用递归
// 如果要遍历子目录下的内容就需要构造成File对象做递归操作,file提供了直接返回file对象的api
File[] files = dir.listFiles();// 返回的是直接子目录(文件)的抽象
if(files!=null && files.length>0){
for (File file : files) {
// System.out.println(f.getAbsolutePath());
if(file.isDirectory()){
listDirectory(file);
}else {
System.out.println(file);
}
}
}
}
}
网友评论