public class FileOperation {
/**
* 读取文件夹下的文件
*/
public List<Map<String, Object>> readFile(String filepath) {
List<Map<String, Object>>fileNameList = new ArrayList<>();
File file = new File(filepath);
if (!file.isDirectory()) {//文件
// System.out.println("文件");
// System.out.println("path=" + file.getPath());
// System.out.println("absolutepath=" + file.getAbsolutePath());
Map<String, Object>fileMap = new HashMap<String, Object>();
String fileName = file.getName();
String absolutePath = file.getAbsolutePath();
fileMap.put(fileName, absolutePath);
fileNameList.add(fileMap);
} else{//文件夹
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File readFile = new File(filepath + "/" + filelist[i]);
if (!readFile.isDirectory()) {
// System.out.println("path=" + readFile.getPath());
// System.out.println("absolutepath=" + readFile.getAbsolutePath());
Map<String, Object>fileMap = new HashMap<String, Object>();
String fileName = readFile.getName();
String absolutePath = readFile.getAbsolutePath();
fileMap.put(fileName, absolutePath);
fileNameList.add(fileMap);
} else {
readFile(filepath + "/" + filelist[i]);
}
}
}
return fileNameList;
}
/**
* 删除某个文件夹下的所有文件夹和文件
*/
public boolean deleteFile(String delpath) {
File file = new File(delpath);
if (!file.isDirectory()) {//文件
file.delete();
} else if (file.isDirectory()) {//文件夹
String[] filelist = file.list();
for (int i = 0; i < filelist.length; i++) {
File delfile = new File(delpath + "/" + filelist[i]);
if (!delfile.isDirectory()) {
System.out.println("path=" + delfile.getPath());
System.out.println("absolutepath="
+ delfile.getAbsolutePath());
System.out.println("name=" + delfile.getName());
delfile.delete();
System.out.println("删除文件成功");
} else if (delfile.isDirectory()) {
deleteFile(delpath + "/" + filelist[i]);
}
}
file.delete();
}
return true;
}
/**
* 写入文件
*/
public void writeFile(String filePath,String content){
try{
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(filePath));
bufferedWriter.write(content);
bufferedWriter.flush();
bufferedWriter.close();
}catch(Exception e){
e.printStackTrace();
}
}
}