1.删除文件
public class FileApi {
public static void main(String[] args) {
File file = new File("/ceshi/ab/wuli2.txt");
if(!file.exists()){
file.mkdir();
System.out.println(file.getAbsoluteFile());
}
File deFile = new File("/ceshi/ab/");
delete("/ceshi/ab/");
/* while (true){
System.out.println("time"+ DateTimeApi.getTimeNow());
try {
break;
*//* Thread.sleep(10*1000);*//*
} catch (InterruptedException e) {
e.printStackTrace();
}
}*/
}
/**
* 删除文件,可以是文件或文件夹
*
* @param fileName
* 要删除的文件名
* @return 删除成功返回true,否则返回false
*/
public static boolean delete(String fileName) {
File file = new File(fileName);
if (!file.exists()) {
System.out.println("删除文件失败:" + fileName + "不存在!");
return false;
} else {
if (file.isFile())
return deleteFile(fileName);
else
return deleteDirectory(fileName);
}
}
/**
* 删除单个文件
*
* @param fileName
* 要删除的文件的文件名
* @return 单个文件删除成功返回true,否则返回false
*/
public static boolean deleteFile(String fileName) {
File file = new File(fileName);
// 如果文件路径所对应的文件存在,并且是一个文件,则直接删除
if (file.exists() && file.isFile()) {
if (file.delete()) {
System.out.println("删除单个文件" + fileName + "成功!");
return true;
} else {
System.out.println("删除单个文件" + fileName + "失败!");
return false;
}
} else {
System.out.println("删除单个文件失败:" + fileName + "不存在!");
return false;
}
}
/**
* 删除目录及目录下的文件
*
* @param dir
* 要删除的目录的文件路径
* @return 目录删除成功返回true,否则返回false
*/
public static boolean deleteDirectory(String dir) {
// 如果dir不以文件分隔符结尾,自动添加文件分隔符
if (!dir.endsWith(File.separator))
dir = dir + File.separator;
File dirFile = new File(dir);
// 如果dir对应的文件不存在,或者不是一个目录,则退出
if ((!dirFile.exists()) || (!dirFile.isDirectory())) {
System.out.println("删除目录失败:" + dir + "不存在!");
return false;
}
boolean flag = true;
// 删除文件夹中的所有文件包括子目录
File[] files = dirFile.listFiles();
for (int i = 0; i < files.length; i++) {
// 删除子文件
if (files[i].isFile()) {
flag = deleteFile(files[i].getAbsolutePath());
if (!flag)
break;
}
// 删除子目录
else if (files[i].isDirectory()) {
flag = deleteDirectory(files[i]
.getAbsolutePath());
if (!flag)
break;
}
}
if (!flag) {
System.out.println("删除目录失败!");
return false;
}
// 删除当前目录
if (dirFile.delete()) {
System.out.println("删除目录" + dir + "成功!");
return true;
} else {
return false;
}
}
}
2.创建文件
String path = "/ceshi/a.txt"
File dstFile = new File(path);
if (!dstFile.exists()) {
/* 如果父目录不存在则创建 */
File parentFile = dstFile.getParentFile();
if (!parentFile.exists()) {
parentFile.mkdirs();
}
}
/* 创建空文件 */
dstFile.createNewFile();
3.创建空文件夹
String path = "/ceshi/";
File dir = new File(path);
if( !dir.exists()) {
dir.mkdirs();
}
4.获取文件夹下内容File rootPath = new File("/ceshi/");
File[] files = rootPath.listFiles();
5.小知识
String path = "/ceshi/a.txt";
File file = new File("/ceshi/a.txt");
file.isFile():是否是文件
file.isDirectory():是否是文件夹
path.endWith(File.separator):路径是否是以分隔符结束(在 UNIX 系统上,此字段的值为 '/';在 Microsoft Windows 系统上,它为 '\'。)