批量删除文件(gui)

使用方法:
   输入 文件夹路径后缀名即可(操作密码:333)

方式1:批处理启动(注意这两个文件应该放在同一目录下。)
zip压缩文件deleteFile.zip        批处理文件.bat(源码如下,复制到txt文件中,然后修改后缀为bat即可)
@echo off
color 2f
mode con cols=80 lines=30
echo. 
echo *************************************************************
echo *         本程序仅用于【批量删除文件】                      *
echo *         木丁西(QQ:1012421396)                          *
echo *使用方法:					            *
echo *	  1.选择文件夹路径				    *
echo *	  2.输入要删除文件名的后缀(例如txt word xls 等)   *
echo *************************************************************
echo.
title 批量删除文件
java -classpath .\deleteFile.zip com.cn.deleteFile

方式2:打jar包  ( 推荐:因为这是图形化界面,可以启动
Demo:
   
   
  1. package com.cn;
  2. import java.awt.BorderLayout;
  3. import java.awt.ScrollPane;
  4. import java.io.BufferedReader;
  5. import java.io.File;
  6. import java.io.InputStreamReader;
  7. import javax.swing.JFileChooser;
  8. import javax.swing.JFrame;
  9. import javax.swing.JOptionPane;
  10. import javax.swing.JPanel;
  11. import javax.swing.JTextArea;
  12. public class deleteFile {
  13. //窗体
  14. static JFrame frame = new JFrame("批量删除文件");
  15. static boolean flag = true;//删除成功标志。默认不成功
  16. static int count = 0;//计数,删除的文件个数
  17. public static void main(String[] args){
  18. String password = JOptionPane.showInputDialog("请输入操作密码:(3位数字)");
  19. if(!"333".equalsIgnoreCase(password)){
  20. JOptionPane.showMessageDialog(frame, "密码错误,您没有权限操作!!!");
  21. System.exit(1);
  22. }
  23. //弹出提示框
  24. JOptionPane.showMessageDialog(frame, "本程序仅用于【批量删除文件】\n作者:木丁西(QQ:1012421396)\n使用方法:\n 1.选择文件夹路径(注意:不能选择根盘符)\n 2.输入要删除文件名的后缀(例如txt word xls 等)");
  25. //面板
  26. JPanel panel = new JPanel();
  27. //文件夹搜索夹
  28. JFileChooser fileChooser = new JFileChooser();
  29. fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
  30. fileChooser.showOpenDialog(null);//弹出选择框
  31. //后缀名输入框
  32. String extensions = JOptionPane.showInputDialog("请输入后缀名:(例如:txt doc downloading等)");
  33. /* BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  34. System.out.println("请输入文件夹路径:");
  35. String filePath = br.readLine();
  36. System.out.println("请输入要删除文件的后缀名:");
  37. String extensions = br.readLine();
  38. File file = new File(filePath);
  39. delete(file, extensions);*/
  40. //读取一个文件夹路径
  41. File file = fileChooser.getSelectedFile();
  42. //删除前确认
  43. int num = JOptionPane.showConfirmDialog(frame, "您确定删除文件夹【" + file + "】中所有后缀为【" + extensions + "】的文件吗?");//是0 否1 取消2 x-1
  44. if(num == 0){
  45. try {
  46. delete(file, extensions);
  47. } catch (Exception e) {
  48. JOptionPane.showMessageDialog(frame, "注意:选择的盘符无效!!!");
  49. System.exit(1);
  50. }
  51. }else{
  52. System.exit(1);
  53. }
  54. FrameUtil.initFrame(frame, 300, 400);
  55. if(flag){
  56. JOptionPane.showMessageDialog(frame, "文件夹为【" + file + "】中所有后缀为【" + extensions + "】的文件删除成功!!共计【" + count + "】个文件");
  57. System.out.println("文件夹为【" + file + "】中所有后缀为【" + extensions + "】的文件删除成功!!共计【" + count + "】个文件");
  58. }
  59. System.exit(2);
  60. }
  61. private static void delete(File file, String extensions) {
  62. if(file == null || extensions == null || extensions.isEmpty()){
  63. flag = false;
  64. JOptionPane.showMessageDialog(frame, "没有正确选择文件夹路径或者要删除文件的后缀名!!!");
  65. return;
  66. }
  67. //遍历文件夹
  68. if(file.isDirectory()){//如果file是文件夹
  69. File[] files = file.listFiles();
  70. for(File f : files){
  71. if(f.isDirectory()){
  72. delete(f, extensions);
  73. }
  74. //获取文件的文件名
  75. String path = f.getName();
  76. //正则表达式
  77. String reg = ".+\\." + extensions;
  78. if(path.matches(reg)){
  79. count++;
  80. f.delete();
  81. System.out.println("正在删除" + f.getName());
  82. }
  83. }
  84. }else{
  85. flag = false;
  86. System.out.println("对不起您输入的不是文件夹!!!");
  87. }
  88. }
  89. }

FrameUtil工具:
      
      
  1. package com.cn;
  2. import java.awt.Dimension;
  3. import java.awt.Toolkit;
  4. import javax.swing.JFrame;
  5. public class FrameUtil {
  6. //获取屏幕的分辨率,设置窗体在屏幕的居中位置
  7. public static void initFrame(JFrame frame, int width, int height){
  8. frame.setVisible(false);//设置窗体的可见性为不可见
  9. Toolkit toolkit = Toolkit.getDefaultToolkit();
  10. //获取屏幕的分辨率
  11. Dimension screenSize = toolkit.getScreenSize();
  12. int x = screenSize.width;
  13. int y = screenSize.height;
  14. frame.setBounds((x-width)>>1, (y-height)>>1, width, height);
  15. //设置窗体关闭的事件
  16. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  17. }
  18. }

效果:




 
 
 
 

 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值