C#,按类型删除指定文件的工具软件

点击下载本文软件(积分):

https://download.csdn.net/download/beijinghorn/89059141icon-default.png?t=N7T8https://download.csdn.net/download/beijinghorn/89059141

下载审核通过之前,请从百度网盘下载(无积分):

https://pan.baidu.com/s/1P-UCB9MfUwA0L7JVAqPCWQ?pwd=dgw8icon-default.png?t=N7T8https://pan.baidu.com/s/1P-UCB9MfUwA0L7JVAqPCWQ?pwd=dgw8

链接:https://pan.baidu.com/s/1P-UCB9MfUwA0L7JVAqPCWQ?pwd=dgw8 
提取码:dgw8

1 功能介绍

按文件类型删除指定文件夹及其全部各级子目录内文档的工具软件;

程序员或非程序员每天需处理大量的文件,其中有很多实际上不需要长期保存或每天备份的垃圾级别的文件,因而需要一个工具能够按类别一次性删除这些文件。

基本功能是:

(1)搜索并统计、显示指定文件夹及其全部各级子目录内文档的数量,最小最大字节数,总字节数数;

(2)简便方式选择以指定删除的文件类型;

(3)一键删除选定类型的文件,DFS深度递归模式自动检索全部各级别子目录;

(4)可选定删除空文件夹;

(5)能适配空后缀类型文件;

(6)比较强的权限与容错机制;

2 欢迎界面

3 文件检索界面

选择删除的文件类型

删除之后,自动重新检索并统计。

可一键启用上次的选择。

4 部分源代码


/// <summary>
/// 表格显示文件数、最小最大、字节数及选择删除
/// </summary>
private string ShowFileSummary()
{StringBuilder sb = new StringBuilder();#region HTML 头部csssb.AppendLine("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");sb.AppendLine("<html xmlns=\"http://www.w3.org/1999/xhtml\" >");sb.AppendLine("<head>");sb.AppendLine("<meta charset=\"UTF-8\">");sb.AppendLine("<style>");sb.AppendLine("* { font-family:Consolas,微软雅黑; }");sb.AppendLine("html,body { -webkit-text-size-adjust:none;padding:0px;background-color:#FFFF00; }");sb.AppendLine("input { font-size:15px; }");sb.AppendLine("img { cursor:pointer;border:0px;}");sb.AppendLine("table { border-collapse:collapse;font-size:15px; }");sb.AppendLine("td { padding:5px; } ");sb.AppendLine("input { padding:3px; }");sb.AppendLine("input[type=\"checkbox\"] { margin-right:5px;padding:0;width:17px;height:17px;cursor:pointer; }");sb.AppendLine("input[type=\"checkbox\"]:checked+label { color:#AA0000; }");sb.AppendLine("input[type=\"checkbox\"]+label { cursor:pointer;color:#000000;font-size:14px;margin-right:10px;padding-top:1px; }");sb.AppendLine("input[type=\"checkbox\"]+label:hover { cursor:pointer;color:#AA0000; }");sb.AppendLine("input,label { vertical-align:middle; }");sb.AppendLine(".r1 { background-color:#E1EFBA; }");sb.AppendLine(".r1:hover { background-color:#FFFFFF;font-weight:bold;border:dashed 1px #daac31;cursor:pointer; }");sb.AppendLine(".r2 { background-color:#EFFCCD; }");sb.AppendLine(".r3 { background-color:#86AA0C;color:#FFFFFF;}");sb.AppendLine(".r4 { background-color:#EFF8DB; }");sb.AppendLine(".r4:hover { background-color:#FFFFFF;font-weight:bold;border:dashed 1px #daac31;cursor:pointer; }");sb.AppendLine(".r5 { background-color:#EFF8DB;height:31px; }");sb.AppendLine(".r5:hover { background-color:#FFFFFF;font-weight:bold;border:dashed 1px #daac31;cursor:pointer; }");sb.AppendLine("</style>");sb.AppendLine("</head>");sb.AppendLine("<body oncontextmenu=\"return false\" ondragstart=\"return false\" onbeforecopy=\"return false\" oncopy=\"document.selection.empty()\" onselect=\"document.selection.empty()\" onselectstart=\"return false\">");#endregionsb.AppendLine("<table width='100%' border=1 bordercolor='#AAAAEE'>");sb.AppendLine("<tr class='r3'>");sb.AppendLine("<td>No.</td>");sb.AppendLine("<td>Extention</td>");sb.AppendLine("<td style='text-align:right;'>files</td>");sb.AppendLine("<td style='text-align:right;'>min-max</td>");sb.AppendLine("<td style='text-align:right;'>bytes</td>");sb.AppendLine("<td></td>");sb.AppendLine("</tr>");int idx = 0;int count = 0;long total = 0;foreach (ClassInfo fx in classes){sb.AppendLine("<tr class=r5>");sb.AppendLine("<td>" + (idx + 1) + "</td>");sb.AppendLine("<td>" + (fx.Extention == zero_extention ? "." : fx.Extention) + "</td>");sb.AppendLine("<td style='text-align:right;'>" + fx.Count + "</td>");if (fx.Min == fx.Max)sb.AppendLine("<td style='text-align:right;'>" + ConvertFileSize(fx.Min) + "</td>");elsesb.AppendLine("<td style='text-align:right;'>" + ConvertFileSize(fx.Min) + " - " + ConvertFileSize(fx.Max) + "</td>");sb.AppendLine("<td style='text-align:right;'>" + ConvertFileSize(fx.Length) + "</td>");sb.Append("<td style='text-align:center;'>");sb.Append("<input ");sb.Append("type='checkbox'");sb.Append("id='ext_" + idx + "' ");sb.Append("name='ext_" + idx + "' ");sb.Append("value='" + fx.Extention + "'");sb.Append(">");sb.Append("<label for='ext_" + idx + "'>del</label>");sb.Append("</td>");sb.AppendLine("</tr>");count += fx.Count;total += fx.Length;idx++;}sb.AppendLine("<tr class='r3'>");sb.AppendLine("<td>No.</td>");sb.AppendLine("<td>Extention</td>");sb.AppendLine($"<td style='text-align:right;'>{count} files</td>");sb.AppendLine("<td></td>");sb.AppendLine($"<td style='text-align:right;'>{ConvertFileSize(total)}</td>");sb.AppendLine("<td></td>");sb.AppendLine("</tr>");sb.AppendLine("</table>");sb.AppendLine("</body>");sb.AppendLine("</html>");return sb.ToString();
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/293193.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux 10】环境变量

文章目录 &#x1f308; Ⅰ 命令行参数⭐ 1. main 函数的参数⭐ 2. main 函数参数的意义⭐ 3. 查看 argv 数组的内容⭐ 4. 命令行参数结论⭐ 5. 为什么要有命令行参数⭐ 6. 命令行参数传递由谁执行 &#x1f308; Ⅱ 环境变量基本概念⭐ 1. 常见环境变量 &#x1f308; Ⅲ 查看…

鸿蒙OS开发实战:【网络管理HTTP数据请求】

一、场景介绍 应用通过HTTP发起一个数据请求&#xff0c;支持常见的GET、POST、OPTIONS、HEAD、PUT、DELETE、TRACE、CONNECT方法。 二、 接口说明 HTTP数据请求功能主要由http模块提供。 使用该功能需要申请ohos.permission.INTERNET权限。 涉及的接口如下表&#xff0c;…

Unix中的进程和线程-1

目录 1.如何创建一个进程 2.如何终止进程 2.2遗言函数 3.进程资源的回收 4.孤儿进程和僵尸进程 孤儿进程 (Orphan Process)&#xff1a; 僵尸进程 (Zombie Process)&#xff1a; 代码示例&#xff1a; 5. 进程映像的更新 在Linux中&#xff0c;进程和线程是操作系统进行工作调…

保研线性代数机器学习基础复习2

1.什么是群&#xff08;Group&#xff09;&#xff1f; 对于一个集合 G 以及集合上的操作 &#xff0c;如果G G-> G&#xff0c;那么称&#xff08;G&#xff0c;&#xff09;为一个群&#xff0c;并且满足如下性质&#xff1a; 封闭性&#xff1a;结合性&#xff1a;中性…

从零开始的软件开发实战:互联网医院APP搭建详解

今天&#xff0c;笔者将以“从零开始的软件开发实战&#xff1a;互联网医院APP搭建详解”为主题&#xff0c;深入探讨互联网医院APP的开发过程和关键技术。 第一步&#xff1a;需求分析和规划 互联网医院APP的主要功能包括在线挂号、医生预约、医疗咨询、健康档案管理等。我们…

金融衍生品市场

金融衍生品市场 衍生金融品的作用衍生金融工具远期合约期货合约期权 衍生金融品的作用 套期保值&#xff08;Hedging&#xff09; 组合多头头寸(long position)与空头头寸(short position)例&#xff1a;股票与股指期货 投机 衍生金融工具 远期合约 定义&#xff1a;在将来…

论文笔记 - :MonoLSS: Learnable Sample Selection For Monocular 3D Detection

论文笔记✍MonoLSS: Learnable Sample Selection For Monocular 3D Detection &#x1f4dc; Abstract &#x1f528; 主流做法限制 &#xff1a; 以前的工作以启发式的方式使用特征来学习 3D 属性&#xff0c;没有考虑到不适当的特征可能会产生不利影响。 &#x1f528; 本…

Optimizer神经网络中各种优化器介绍

1. SGD 1.1 batch-GD 每次更新使用全部的样本&#xff0c;注意会对所有的样本取均值&#xff0c;这样每次更新的速度慢。计算量大。 1.2 SGD 每次随机取一个样本。这样更新速度更快。SGD算法在于每次只去拟合一个训练样本&#xff0c;这使得在梯度下降过程中不需去用所有训…

css3之3D转换transform

css3之3D转换 一.特点二.坐标系三.3D移动&#xff08;translate3d)1.概念2.透视&#xff08;perpective)(近大远小&#xff09;&#xff08;写在父盒子上&#xff09; 四.3D旋转&#xff08;rotate3d)1.概念2.左手准则3.呈现&#xff08;transfrom-style)&#xff08;写父级盒子…

智能革命:ChatGPT3.5与GPT4.0的融合,携手DALL·E 3和Midjourney开启艺术新纪元

迷图网(kk.zlrxjh.top)是一个融合了顶尖人工智能技术的多功能助手&#xff0c;集成了ChatGPT3.5、GPT4.0、DALLE 3和Midjourney等多种智能系统&#xff0c;为用户提供了丰富的体验。以下是对这些技术的概述&#xff1a; ChatGPT3.5是由OpenAI开发的一个自然语言处理模型&#x…

KeepAlived使用介绍

目录 1、Introduce 2、基本使用 &#xff08;1&#xff09;安装 &#xff08;2&#xff09;配置文件 &#xff08;3&#xff09;使用教程 1、Introduce keepalived是一个用于实现高可用性和负载均衡的开源软件。它提供了一种轻量级的方式来管理多个服务器&#xff0c;并确保…

使用Detours进行HOOK

文章目录 Detours介绍Detours配置Detours进行Sleep Hook Detours介绍 Detours是微软研究院开发的一款软件工具&#xff0c;用于Windows平台上的应用程序重定向和修改。 它可以在运行时修改应用程序的执行路径&#xff0c;允许开发人员注入自定义代码来改变应用程序的 行为&…

数据分析之Tebleau 的度量名称和度量值

度量名称 包含所有的维度 度量值 包含所有的度量 度量名称包含上面所有的维度&#xff0c;度量值包含上面所有的度量 当同时创建两个或两个以上度量或维度时&#xff0c;会自动创建度量名称和度量值 拖入省份为行(这会是还没有值的) 可以直接将销售金额拖到数值这里 或者将销售…

鸿蒙OS开发实例:【ArkTS类库多线程I/O密集型任务开发】

使用异步并发可以解决单次I/O任务阻塞的问题&#xff0c;但是如果遇到I/O密集型任务&#xff0c;同样会阻塞线程中其它任务的执行&#xff0c;这时需要使用多线程并发能力来进行解决。 I/O密集型任务的性能重点通常不在于CPU的处理能力&#xff0c;而在于I/O操作的速度和效率。…

上位机图像处理和嵌入式模块部署(qmacvisual寻找圆和寻找直线)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 前面有几篇文章&#xff0c;我们谈到过直线拟合、圆拟合和椭圆拟合。当时&#xff0c;我们的做法是&#xff0c;先找到了轮廓&#xff0c;接着找到…

this.$route.back()时的组件缓存

1.this.$route.back()回到上一个路径会重新加载 跳转时,前一个路由的内容会被销毁,当回来时,重新创建树,组件内有保存了距离,没有一开始是0. 2.keep-alive写在router-view上面,这个地方所代表的路由会被保存,因此可以写在上面,保存,当返回时,如果是这个路由,里面的内容是一样…

超强命令行解析工具Apache Commons CLI

概述 为什么要写这篇文章呢?因为在读flink cdc3.0源码的时候发现了这个工具包,感觉很牛,之前写过shell命令,shell是用getopts来处理命令行参数的,但是其实写起来很麻烦,长时间不写已经完全忘记了,现在才发现原来java也有这种工具类,所以先学习一下这个的使用,也许之后自己在写…

canvas画图,画矩形可拖拽移动,可拖拽更改尺寸大小

提示&#xff1a;canvas画图&#xff0c;画矩形&#xff0c;圆形&#xff0c;直线&#xff0c;曲线可拖拽移动 文章目录 前言一、画矩形&#xff0c;圆形&#xff0c;直线&#xff0c;曲线可拖拽移动总结 前言 一、画矩形&#xff0c;圆形&#xff0c;直线&#xff0c;曲线可拖…

AI绘画教程:Midjourney使用方法与技巧从入门到精通

文章目录 一、《AI绘画教程&#xff1a;Midjourney使用方法与技巧从入门到精通》二、内容介绍三、作者介绍&#x1f324;️粉丝福利 一、《AI绘画教程&#xff1a;Midjourney使用方法与技巧从入门到精通》 一本书读懂Midjourney绘画&#xff0c;让创意更简单&#xff0c;让设计…

yolov5 v7.0打包exe文件,使用C++调用

cd到yolo5文件夹下 pyinstaller -p 当前路径 -i logo图标 detect.py问题汇总 运行detect.exe找不到default.yaml 这个是yolov8里的文件 1 复制权重文件到exe所在目录。 2 根据报错提示的配置文件路径&#xff0c;把default.yaml复制放到相应的路径下。&#xff08;缺少相应…