清除系统垃圾

package windows.clear;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

/**
* 清理系统垃圾文件
*
*
*/
public class ClearSystem {
private static int mount_s = 0;
private static int mount_f = 0;

public static void main(String[] args) {
System.out.println("开始删除垃圾文件");
List<String> fileEnd = new ArrayList<String>();
fileEnd.add(".tmp");
fileEnd.add("._mp");
fileEnd.add(".log");
fileEnd.add(".gid");
fileEnd.add(".chk");
fileEnd.add(".old");
deleteFile(System.getenv("systemdrive"), fileEnd);
deleteFile(System.getenv("systemdrive") + "/recycler/", null);// ntfs是recycler,fat是recycled
fileEnd.clear();
fileEnd.add(".bak");
deleteFile(System.getenv("windir"), fileEnd);
deleteFile(System.getenv("windir") + "/prefetch/", null);
deleteFile(System.getenv("windir") + "/temp/", null);
deleteFile(System.getProperty("user.home") + "/cookies/", null);
deleteFile(System.getProperty("user.home") + "/recent/", null);
deleteFile(System.getProperty("user.home")
+ "/Local Settings/Temporary Internet Files/", null);
deleteFile(System.getProperty("user.home") + "/Local Settings/Temp/",
null);
System.out.println("清理完成。成功删除:" + mount_s + " 个文件和文件夹。失败:" + mount_f);
}

// 删除文件夹内指定文件
private static void deleteFile(String fileDir, List<String> fileEnd) {
File f = new File(fileDir);
if (!f.exists()) {
System.out.println(f.getAbsoluteFile() + "不存在!");
return;
}
File[] allFiles = f.listFiles();
for (File tmp : allFiles) {
if (fileEnd != null) {
for (String str : fileEnd) {
if (tmp.getName().endsWith(str)) {
deleteFileAndLog(tmp);
}
}
} else {
deleteAll(tmp.getAbsolutePath());
}
}
}

// 删除指定目录下的所有文件和文件夹
private static void deleteAll(String dir) {
File f = new File(dir);
if (!f.exists())
return;
else {
if (f.isFile()) {
deleteFileAndLog(f);
} else if (f.isDirectory()) {
for (File tmp : f.listFiles()) {
deleteAll(tmp.getAbsolutePath());
}
deleteFileAndLog(f);
}
}
}

// 删除文件并记录日志
private static void deleteFileAndLog(File f) {
try {
f.delete();
mount_s++;
System.out.println("删除文件夹:" + f.getAbsolutePath() + " 成功。");
} catch (Exception e) {
mount_f++;
System.out.println("删除文件夹:" + f.getAbsolutePath() + " 失败。原因:" + e);
}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值