File文件操作类
操作文件
增删改查文件及文件信息,判断文件属性等
package com.li.changGe.commonlyusedClass.files;
import java.io.File;
import java.util.Date;
public class FileDemo01 {
public static void main(String[] args) throws Exception{
/**
* 路径分隔符;
* 文件分隔符\
*
* alt + 4 :快速开头控制台
*/
String pathSeparator = File.pathSeparator;
String separator = File.separator;
//---------------------------------------------
//创建一个映射到文件的对象,可以操作文件
File file = new File("C:\\Users\\林木\\Desktop/test.txt");
//这才是创建文件
file.createNewFile();
//不可重复创建
boolean newFile = file.createNewFile();//false
System.out.println(file.toString());//C:\Users\林木\Desktop\test.txt
//----------------------------------------------------------------------
File image = new File("C:\\Users\\林木\\Desktop/UID.jpg");
fileMethodTest(image);
}
//----------------------------------------------------------------
public static void fileMethodTest(File file){
boolean file1 = file.isFile();//是不是一个文件true
boolean exists = file.exists();//文件是否存在true
boolean hidden = file.isHidden();//是否隐藏false
boolean b = file.canWrite();//是否可写():true
boolean b1 = file.canExecute();//可执行true
boolean b2 = file.canRead();//可读true
//------------------------------------------------------
String absolutePath = file.getAbsolutePath();//绝对路径:"C:\Users\林木\Desktop\UID.jpg"
String path = file.getPath();//返回你创建对象时写的路径:"C:\Users\林木\Desktop\UID.jpg"
String name = file.getName();//UID.jpg
String parent = file.getParent();//父类路径"C:\Users\林木\Desktop"
//----------------------------------------------------
long length = file.length();//文件长度:181357
long l = file.lastModified();//最后修改的时间1647314531107
String s = new Date(l).toLocaleString();//"2022-3-15 11:22:11"
//----------------------------------------------------
//file.delete();
file.deleteOnExit();//JVM(虚拟机)退出时(程序结束)删除文件
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
操作文件夹
创建文件夹,读取文件夹内文件等
package com.li.changGe.commonlyusedClass.files;
import java.io.File;
public class FolderDemo01 {
public static void main(String[] args) {
File file = new File("C:/Users/林木/Desktop/a/b/c/d.txt");
//多级目录无法创建,没有反应
//file.mkdir();
/**
* 创建多级目录
* 只创建文件夹,会创建出一个叫"d.txt"的文件夹来
*/
file.mkdirs();
//----------------------------------------------------------------
boolean directory = file.isDirectory();//是否是一个文件夹:true
/**
* 自己目录内(只往下一级,再多不识别)的文件和文件夹的简单路径(名称)
* i是一个文件夹,它下面还有一个j文件夹
* 但是只读取到了i
*
* i
* k.txt
*/
String[] list = file.list();
for (String s : list) {
System.out.println(s);
}
/**
* 返回对象
* C:\Users\林木\Desktop\a\b\c\d.txt\i
* C:\Users\林木\Desktop\a\b\c\d.txt\k.txt
*/
File[] files = file.listFiles();
for (File file1 : files) {
System.out.println(file1.toPath());
}
}
}