C#–遍历目录实例

C#–遍历目录实例

大家好,又见面了,我是全栈君。

鉴于前面几篇博客都说了,这边就啥都不说了。直接就開始贴代码了。


1.控件解释:

FolderBrowserDialog控件一个—-用来显示”浏览目录”对话框

TextBox控件一个—-用来显示选择的目录

Button控件一个—-用来打开”浏览目录”对话框

ListView控件一个—-用来显示选择的目录中的子目录及文件信息


2.实例代码:

        private void button1_Click(object sender, EventArgs e)
        {
            listView1.Items.Clear();
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                textBox1.Text = folderBrowserDialog1.SelectedPath;
                //实例化DirectoryInfo对象
                DirectoryInfo dinfo = new DirectoryInfo(textBox1.Text);
                //获取指定目录下的全部子目录及文件类型
                FileSystemInfo[] fsinfos = dinfo.GetFileSystemInfos();
                foreach (FileSystemInfo fsinfo in fsinfos)
                {
                    if (fsinfo is DirectoryInfo)    //推断是否目录
                    {
                        //使用获取的目录名称实例化DirectoryInfo对象
                        DirectoryInfo dirinfo = new DirectoryInfo(fsinfo.FullName);
                        //为ListView控件加入目录信息
                        listView1.Items.Add(dirinfo.Name);
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add(dirinfo.FullName);
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add("");
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add(dirinfo.CreationTime.ToShortDateString());
                    }
                    else
                    {
                        //使用获取的文件名实例化FileInfo对象
                        FileInfo finfo = new FileInfo(fsinfo.FullName);
                        //为ListView控件加入文件信息
                        listView1.Items.Add(finfo.Name);
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.FullName);
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.Length.ToString());
                        listView1.Items[listView1.Items.Count - 1].SubItems.Add(finfo.CreationTime.ToShortDateString());
                    }
                }
            }
        }




3.执行截图:


点击浏览button

C#--遍历目录实例


选择一个目录后:

C#--遍历目录实例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/116042.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 变长数组VLA_数组的大小长度可以改变吗

    变长数组VLA_数组的大小长度可以改变吗C99标准中,支持变长数组,即方括号[]中可以用为一个变量,但是很多编译器并不能很好地支持。c++11标准中,不支持变长数组,即方括号[]中必须为常量表达式。c++标准支不支持变长数组,并不重要,因为完全可以自己实现。变长数组(VLA):即在运行时候确定数组的长度静态数组:编译时数组长度就定死了,不能对数组进行增、删、改动态数组:运行时才确定数组的长度,可以对数组进行增、删、改…

    2022年10月25日
  • 如何自定义类加载器_网易js加载器下载地址

    如何自定义类加载器_网易js加载器下载地址1.什么情况下需要自定义类加载器?(1)隔离加载类:在某些框架内进行中间件与应用的模块隔离,把类加载到不同的环境。比如,某容器框架通过自定义类加载器确保应用中依赖的jar包不会影响到中间件运行时使用的jar包。(jar包之间的冲突的消除)(2)修改类加载方式:类的加载模型并非强制,除Bootstrap外,其它的加载并非一定要引入,或者根据实际情况在某个时间点进行按需动态加载。(3)扩展…

  • ods mysql_ODS数据抽取平台[通俗易懂]

    ods mysql_ODS数据抽取平台[通俗易懂]一、产品简介ODS数据抽取平台是数据仓库对数据进行精细加工的中间环节,将加工后的数据存储到ODS数据模型中,以便总账,报表,数据仓库使用。将远程网络生产数据库中的数据备份到一台备份机中(防止对生产数据的误操作),然后在可视化的第三方ETL工具中编辑ETL脚本,对备份库中的数据进行精细的加工,ETL脚本可以对网络中的任意一台数据库中任意的一张或多张表进行复杂的计算,然后将计算结果保存到ODS的数据模…

  • 彻底摆脱乱码的困惑

    彻底摆脱乱码的困惑

    2020年11月20日
  • wxPython的基础教程

    wxPython的基础教程写在前面的话:上个假期学习了Python,发现它真的是一门很有趣的语言,所以这学期想学一些python的可视化编程,于是选择了wxPython。但是我在网上找中文教程找了好久都没有找到中文的教程(额,也许是我方法不对),无奈只好看英文的啦。于是在这个网站上看完了wxPython的基础教程,但是为了方便广大网友所以决定将这个网页中的内容翻译过来。花费了3个晚上的时间,终于把它翻译完了。但是我只是一个

  • 组态王系统管理员默认密码_管理没有本地用户和组

    组态王系统管理员默认密码_管理没有本地用户和组用户和组管理a) 用户分类i. 超级用户:root拥有系统最高的管理权限uid=0(root)gid=0(root)组=0(root)ii. 普通用户系统用户:系统自带的拥有特定功能的用户(编号:1-999)本地用户:使用者新建的用户(编号:1000+)iii. 虚拟用户:这些用户通常不用于登录系统,只是用于维持某些服务的正常运行;b) 创建用户命令useradd[选项]用户名或者adduser-ccomment指定一段注释性描述-d目录指定用户家目.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号