package my.file;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
public class TravelAllFile {
public static void main(String[] args) {
String path = "E:/文件夹";
File f = new File(path);
if (f.isDirectory()) {
new TravelAllFile().getFileName(f);
}
delFolder("E:/文件夹");
System.out.println("deleted");
}
// 递归查找函数,参数为file对象
public void getFileName(File f) {
// File 数组
File[] files = f.listFiles();
for (int i = 0; i < files.length; i++) {
// 递归出子目录
if (files[i].isDirectory()) {
System.out.println("子目录是:" + files[i].getName());
getFileName(files[i]);
// 递归出子文件
} else {
System.out.println(files[i].getName());
}
}
}
//重命名
public void rename(){
File fl=new File("E:\\文件夹"); // 这里写上发替换的文件夹路径,注意使用双斜杠
String[] files=fl.list();
File f=null;
String filename="";
for(String file:files)
{
f=new File(fl,file);// 注意,这里一定要写成File(fl,file)如果写成File(file)是行不通的,一定要全路径
filename=f.getName();
// System.out.println(filename);
f.renameTo(new File(fl.getAbsolutePath()+"\\"+filename.replace("要替换掉的内容", "替换成的内容")));// 这里可以反复使用replace替换,当然也可以使用正则表达式来替换了
}
}
//删除文件夹
//param folderPath 文件夹完整绝对路径
public static void delFolder(String folderPath) {
try {
delAllFile(folderPath); //删除完里面所有内容
String filePath = folderPath;
filePath = filePath.toString();
java.io.File myFilePath = new java.io.File(filePath);
myFilePath.delete(); //删除空文件夹
} catch (Exception e) {
e.printStackTrace();
}
}
//删除指定文件夹下所有文件
//param path 文件夹完整绝对路径
public static boolean delAllFile(String path) {
boolean flag = false;
File file = new File(path);
if (!file.exists()) {
return flag;
}
if (!file.isDirectory()) {
return flag;
}
String[] tempList = file.list();
File temp = null;
for (int i = 0; i < tempList.length; i++) {
if (path.endsWith(File.separator)) {
temp = new File(path + tempList[i]);
} else {
temp = new File(path + File.separator + tempList[i]);
}
if (temp.isFile()) {
temp.delete();
}
if (temp.isDirectory()) {
delAllFile(path + "/" + tempList[i]);//先删除文件夹里面的文件
delFolder(path + "/" + tempList[i]);//再删除空文件夹
flag = true;
}
}
return flag;
}
/**
* 创建目录
* @param dirPath
*/
static Boolean createDir(String dirPath){
File dirFile = new File(dirPath);
return dirFile.mkdirs();
}
/**
* 创建文件
* @param filePath
* @param content
* @return Boolean
*/
static Boolean createFile(String filePath,String content){
Writer writer = null;
File file = new File(filePath);
File temp = new File(file.getParent());
if(!temp.exists()){
createDir(file.getParent());
}
try{
writer = new OutputStreamWriter(new FileOutputStream(file));
writer.write( content );
}catch(Exception e){
e.printStackTrace();
return false;
}finally{
try{
if(writer!=null){
writer.close();
}
}catch(Exception e1){
e1.printStackTrace();
}
}
return true;
}
}
Java创建、重命名、删除文件和文件夹
原创
©著作权归作者所有:来自51CTO博客作者mb646713a07a071的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java创建、重命名、删除文件和文件夹(转)
Java的文件
commons-io apache apache 文件路径 目标文件 -
linux 重命名文件和文件夹
linux 重命名文件和文件夹lin
linux 重命名文件和文件夹 mv 重命名 当前目录 -
hdfs创建删除文件和文件夹
在 中,基于 命令可以给 创建文件和文件夹,或者删除文件和文件夹 创建文件的命
hadoop 创建文件 删除文件 -
Java删除文件夹和文件
以前在javaeye看到过关于Java操作文件的一篇文章,写的很好,但找了半天也没找到,就把找到底几篇文章整理一下,做个总结,算是一个学
java 删除目录 删除文件夹 删除文件 分隔符