import java.io.File;
創(chuàng)新互聯(lián)公司專注于企業(yè)全網(wǎng)營銷推廣、網(wǎng)站重做改版、西吉網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、HTML5建站、商城建設、集團公司官網(wǎng)建設、外貿網(wǎng)站制作、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為西吉等各大城市提供網(wǎng)站開發(fā)制作服務。
/**
* 刪除文件和目錄
*
*/
public class DeleteFileUtil {
/**
* 刪除文件,可以是文件或文件夾
*
* @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 = DeleteFileUtil.deleteFile(files[i].getAbsolutePath());
if (!flag)
break;
}
// 刪除子目錄
else if (files[i].isDirectory()) {
flag = DeleteFileUtil.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;
}
}
public static void main(String[] args) {
// // 刪除單個文件
// String file = "c:/test/test.txt";
// DeleteFileUtil.deleteFile(file);
// System.out.println();
// 刪除一個目錄
String dir = "D:/home/web/upload/upload/files";
DeleteFileUtil.deleteDirectory(dir);
// System.out.println();
// // 刪除文件
// dir = "c:/test/test0";
// DeleteFileUtil.delete(dir);
}
}
1、如果只是想要文件中的內容,可以使用如下代碼:
FileOutputStream?fs?=?new?FileOutputStream(new?File("C:\\buyterms.txt"));
2、如果是想要文件夾中的內容,可以使用如下代碼:
package?com.xx;??
import?java.io.File;??
public?class?Test?{??
public?static?void?main(String[]?args)?{??
String?fileRoot?=?"C:/Users/xx/Desktop/xx/xxx";??
delFolder(fileRoot);??
System.out.println("deleted");??
}??
//??//?刪除完文件后刪除文件夾??
//??//?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;??
}??
}
File
F=new
File(路徑);/通過將給定路徑名字符串轉換為抽象路徑名來創(chuàng)建一個新
File
實例。
F.delete();//刪除此抽象路徑名表示的文件或目錄。
文件的移動的話,得通過輸入輸出流
FileInputStream
FI=new
FileInputStream(F);
FileOutputStream
FO=new
FileOutputStream(F);
wile(FI.read()!=EOF)
{
FO.write();
}