文档章节

c#文件夹大小搜索程序

l
 llkzqk
发布于 2016/01/31 15:02
字数 267
阅读 6
收藏 0

一个用于磁盘清理的文件夹大小搜索程序,效果不错,留此奉上,以备再用。

说一下看点:主要是针对C盘的清理,由于有许多文件夹是有安全访问权限的,使用了两个

try catch 嵌套,DirectoryInfo 有些弱且需要遍历,采用了 Scripting.FileSystemObject,对能找到

子目录但不能获得大小的情况做进一步的递归,对不能获得子目录的就放弃了。时间紧更多的细节就

懒得考虑了,主要是简单便捷,输出文件夹大小信息后就可以手工直观的删除不需要的文件夹,给C盘

留出更多的空间了。

        static StringBuilder sb = new StringBuilder();

        static void Main(string[] args)

        {

            Scripting.FileSystemObject fso = new Scripting.FileSystemObject();

            var folder = fso.GetFolder(@"C:\");

            Listfolder(folder, fso);

            File.WriteAllText(@"E:\test\filelist.txt", sb.ToString());

            Console.ReadKey();

        }

        public static void Listfolder(Scripting.Folder folder, Scripting.FileSystemObject fso)

        {

            try

            {

                foreach (Scripting.Folder it in folder.SubFolders)

                {

                    int size = 0;

                    try

                    {

                        size = it.Size;

                    }

                    catch (Exception err)

                    {

                        Console.WriteLine("size err " + it.Path);

                        Listfolder(it, fso);

                    }

                    if (size > 100000000)

                    {

                        string str = it.Path + "|" + size / 1000000;

                        sb.AppendLine(str);

                        Listfolder(it, fso);

                    }

                }

            }

            catch(Exception err)

            {

                Console.WriteLine("sub err " + folder.Path);

            }

        }



© 著作权归作者所有

共有 人打赏支持
l
粉丝 0
博文 1
码字总数 267
作品 0
昆明
私信 提问
使用VSCode如何调试C#控制台程序_1

原文:使用VSCode如何调试C#控制台程序_1 A-环境安装 https://www.microsoft.com/net/download 下载 .NET Core SDK Installer: https://www.microsoft.com/net/download/core VSCode : https:......

杰克.陈
2018/10/27
0
0
C# 插入文本框到PPT幻灯片

概述 在文本框中我们可以实现的操作有很多,如插入文字、图片、设置字体大小、颜色、文本框背景填充、边框设置等。下面的示例中,将介绍通过C# 在PPT幻灯片中插入幻灯片的方法。 示例中包含了...

E-iceblue
2018/10/30
0
0
C#脱离IronPython中执行python脚本

给客户安装程序时除了安装.net framework还要安装IronPython,是不是觉得很麻烦? 上面这一切都弱爆了,下面我来介绍一种不安装IronPython只需要引入几个IronPython的dll就可以在c#中执行pyt...

gsbhzh
2014/12/27
0
0
C# 搜索文字在文件、文件夹中的出现位置

〇、关于本文 在linux中查询文字在文件中出现的位置,或者在一个文件夹中出现的位置,用命令 就可以了。今天做了一个C#程序,专门用来找出一个指定字符串在文件中的位置,与一个指定字符串在...

北风其凉
2014/07/04
0
0
File System & App setting(文件系统和应用设置)

一、手机上的数据存储 由于Windows Phone的安全设置,每个应用程序只允许访问自己特定的存储空间,并不能访问操作系统或者其他应用的文件,当安装一个Windows Phone应用程序之后,该应用就会...

失足处男的倒霉孩子
2013/12/27
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

Oracle学习日志-7(聚合查询)

GROUP BY子句: GROUP BY可以对表进行分割。比如把下面的表按照商品种类进行分割,并列出该商品种类下有多少商品 SQL代码如下 SELECT product_type ,COUNT(*)FROM ProductGROUP BY produc...

白话
10分钟前
0
0
Docker安装mysql8主从结构

准备两台服务器,假设IP地址为 172.31.27.67 主服务器 172.31.27.69 从服务器 因为我用的镜像是docker.io/cytopia/mysql-8.0,所以我们需要先把该镜像给pull下来。 docker pull docker.io/cy...

算法之名
13分钟前
3
0
Springboot集成Ehcache缓存(主要用在登录后做保持会话验证)

EhCache是一个比较成熟的Java缓存框架,最早从hibernate发展而来, 是进程中的缓存系统,它提供了用内存,磁盘文件存储,以及分布式存储方式等多种灵活的cache管理方案,快速简单。 Springbo...

Nonry
15分钟前
0
0
Ajax

1、创建ajax对象 if(window.navigator.userAgent.indexOf('MSIE') > 0){ var xhr = new ActiveXObject('Microsoft.XMLHTTP');}else{ var xhr = new XMLHttpRequest();} 2、get......

lujc
15分钟前
0
0
Flink的基石 : Chandy Lamport Algorithm

Flink处理“流”,对流消息的处理支持三种级别语义分别是“At Most once、At Least once、Exactly once”。 At Most onces:消息最多被处理一次,sender发出消息之后,receiver无论是否处理成...

tantexian
20分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部