java實(shí)現(xiàn)讀取、刪除文件夾下的文件
java實(shí)現(xiàn)讀取、刪除文件夾下的文件
package test.com;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
public class ReadFile {
public ReadFile() {
}
/**
* 讀取某個(gè)文件夾下的所有文件
*/
public static boolean readfile(String filepath) throws FileNotFoundException, IOException {
try {
File file = new File(filepath);
if (!file.isDirectory()) {
// System.out.println("文件");
// System.out.println("path=" + file.getPath());
// System.out.println("absolutepath=" + file.getAbsolutePath());
System.out.println(file.getName());
} else if (file.isDirectory()) {
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());
System.out.println(readfile.getName());
} else if (readfile.isDirectory()) {
readfile(filepath + "\\" + filelist[i]);
}
}
}
} catch (FileNotFoundException e) {
System.out.println("readfile() Exception:" + e.getMessage());
}
return true;
}
/**
* 刪除某個(gè)文件夾下的所有文件夾和文件
*/
/*public static boolean deletefile(String delpath)
throws FileNotFoundException, IOException {
try {
File file = new File(delpath);
if (!file.isDirectory()) {
System.out.println("1");
file.delete();
} else if (file.isDirectory()) {
System.out.println("2");
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();
}
} catch (FileNotFoundException e) {
System.out.println("deletefile() Exception:" + e.getMessage());
}
return true;
}*/
public static void main(String[] args) {
try {
readfile("C:\\Users\\SW\\Desktop\\SKJ_H25補(bǔ)正\\004_RCAG\\003_SKJ");
// deletefile("D:/file");
} catch (FileNotFoundException ex) {
} catch (IOException ex) {
}
System.out.println("ok");
}
}
方法二:
package otherstudy;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
/**
* @ClassName: TestReadFile
* @CreateTime: Aug 1, 2014 11:42:44 AM
* @Author: mayi
* @Description: 讀取和刪除文件夾下的所有文件
*
*/
public class TestReadFile {
/**
* 獲取工程的WebRoot的絕對(duì)路徑
* @return
*/
String getProjectPath(){
//得到形如"/d:/${workspace}/${projectName}/WebRoot/WEB-INF/classes/"的 路徑
String path=this.getClass().getResource("/").getPath();
//從路徑字符串中取出工程路徑
path=path.substring(1, path.indexOf("WEB-INF/classes"));
System.out.println("工程路徑:"+path);
return path;
}
/**
* @param args
*/
public static void main(String[] args) {
TestReadFile trf=new TestReadFile();
String xmlPath = trf.getProjectPath()+ "testDocs";
try {
readAllFile(xmlPath);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 讀取指定路徑文件夾下的所有文件
* @param filepath
* @return
* @throws FileNotFoundException
* @throws IOException
*/
public static boolean readAllFile(String filepath)
throws FileNotFoundException, IOException {
try {
File file = new File(filepath);
if (!file.isDirectory()) {
System.out.println("\n文件信息:");
System.out.println("\t相對(duì)路徑=" + file.getPath());
System.out.println("\t絕對(duì)路徑=" + file.getAbsolutePath());
System.out.println("\t文件全名=" + file.getName());
} else if (file.isDirectory()) {
System.out.println("\n文件夾內(nèi)文件列表信息:");
File[] fileList = file.listFiles();
for (int i = 0; i < fileList.length; i++) {
File readfile = fileList[i];
if (!readfile.isDirectory()) {
System.out.println("\n\t相對(duì)路徑=" + readfile.getPath());
System.out.println("\t絕對(duì)路徑=" + readfile.getAbsolutePath());
System.out.println("\t文件全名=" + readfile.getName());
} else if (readfile.isDirectory()) {
readAllFile(fileList[i].getPath());
}
}
}
} catch (FileNotFoundException e) {
System.out.println("readfile() Exception:" + e.getMessage());
}
return true;
}
/**
* 刪除某個(gè)文件夾下的所有文件夾和文件
* @param delpath
* @return
* @throws FileNotFoundException
* @throws IOException
*/
public static boolean deleteFile(String delpath)
throws FileNotFoundException, IOException {
try {
File file = new File(delpath);
if (!file.isDirectory()) {
System.out.println("1");
file.delete();
} else if (file.isDirectory()) {
System.out.println("2");
File[] fileList = file.listFiles();
for (int i = 0; i < fileList.length; i++) {
File delfile = fileList[i];
if (!delfile.isDirectory()) {
System.out.println("相對(duì)路徑=" + delfile.getPath());
System.out.println("絕對(duì)路徑=" + delfile.getAbsolutePath());
System.out.println("文件全名=" + delfile.getName());
delfile.delete();
System.out.println("刪除文件成功");
} else if (delfile.isDirectory()) {
deleteFile(fileList[i].getPath());
}
}
file.delete();
}
} catch (FileNotFoundException e) {
System.out.println("deletefile() Exception:" + e.getMessage());
}
return true;
}
}
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
相關(guān)文章
MyBatis中使用foreach循環(huán)的坑及解決
這篇文章主要介紹了MyBatis中使用foreach循環(huán)的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01
Spring Cloud Ribbon負(fù)載均衡器處理方法
這篇文章主要介紹了Spring Cloud Ribbon負(fù)載均衡器處理方法,看看是如何獲取服務(wù)實(shí)例,獲取以后做了哪些處理,處理后又是如何選取服務(wù)實(shí)例的,需要的朋友可以參考下2018-02-02
SpringBoot調(diào)用SOAP接口全流程(含多服務(wù)配置)
本文主要介紹了SpringBoot調(diào)用SOAP接口全流程(含多服務(wù)配置),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-06-06
Java最簡(jiǎn)潔數(shù)據(jù)結(jié)構(gòu)之冒泡排序快速理解
冒泡排序是編程中數(shù)據(jù)結(jié)構(gòu)繞不過(guò)的一個(gè)基礎(chǔ)點(diǎn),有關(guān)于冒泡排序的文章也有很多,但可能會(huì)比較繚亂未能理解,本章將一子u為簡(jiǎn)潔明了的例圖帶你通關(guān)冒泡排序2021-11-11
Java實(shí)現(xiàn)獲取控制臺(tái)輸出結(jié)果轉(zhuǎn)換為變量的詳細(xì)操作
在Java編程中,有時(shí)需將控制臺(tái)的輸出捕獲為字符串,以便于后續(xù)的處理或測(cè)試,這種需求在日志記錄、單元測(cè)試或調(diào)試時(shí)尤為常見,下面,將通過(guò)詳細(xì)步驟來(lái)介紹如何使用ByteArrayOutputStream和PrintStream來(lái)實(shí)現(xiàn)這一功能,需要的朋友可以參考下2024-06-06
java.util.Random和concurrent.ThreadLocalRandom使用對(duì)比
這篇文章主要介紹了java.util.Random和concurrent.ThreadLocalRandom使用對(duì)比,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
SprinBoot整合Quart實(shí)現(xiàn)定時(shí)調(diào)度的示例代碼
這篇文章主要介紹了SprinBoot整合Quart實(shí)現(xiàn)定時(shí)調(diào)度的示例代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10

