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#--遍历目录实例

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 普通交换机可以poe供电吗_poe供电交换机和普通交换机区别

    普通交换机可以poe供电吗_poe供电交换机和普通交换机区别交换机相信大家都比较熟悉,一般说的交换机指的普通交换机,也就是最常见的那种。普通交换机可以传输交换数据,或者局域网内的多个电脑可以相互通信。PoE交换机指可以供电的交换机,跟普通交换机的区别是,它不仅而已传输交换数据,还可以同时给与它连接的设备供电,这样的目的是可以免去额外的电源布线,不用刻意请电工师傅。可能有朋友会问,普通交换机能否改成PoE供电的,如何将普通交换机变成PoE交换机?接下来我们就跟随飞畅科技的小编一起来详细看看吧!普通交换机和poe交换机虽都是交换机,在内部结构有区别的,PoE交换机里

    2022年10月4日
    3
  • 只通过com.alibaba.fastjson.JSONArray实现okHttp下String转换JSONArray

    只通过com.alibaba.fastjson.JSONArray实现okHttp下String转换JSONArray我的Android不能导入常见的那六个包,会严重报错。我改了很久很久还是不能解决错误,也就不能使用net.sf包中的JSONArray直接使用newJSONArray(str)。给像我一样不能导入包的同学介绍一种方法importcom.alibaba.fastjson.JSONArray;importcom.alibaba.fastjson.JSONObject;Stri…

    2022年6月20日
    28
  • 前端代码规范七大原则_织梦自定义表单源码

    前端代码规范七大原则_织梦自定义表单源码前言有时候我们发送手机验证码,会发现1分钟只能发送1次,这是做了频率限制,限制的时间次数,都由开发者自己决定频率认证源码分析defcheck_throttles(self,request):

    2022年7月29日
    7
  • Java 安全之Java Agent

    Java安全之JavaAgent0x00前言在前面发现很多技术都会去采用JavaAgent该技术去做实现,比分说RASP和内存马(其中一种方式)、包括IDEA的这些破解都是基于JavaA

    2021年12月12日
    37
  • 华为服务器pxe装系统,pxe启动服务器

    华为服务器pxe装系统,pxe启动服务器pxe启动服务器内容精选换一换根据给定的云服务器ID列表,批量启动云服务器,一次最多可以启动1000台。POST/v1/{project_id}/cloudservers/action参数说明请参见表1。参数说明参数是否必选描述project_id是项目ID。获取方法请参见获取项目ID。请参考响应(任务类)。启动云服务器请求参数中,必须以“os-start”字段下发用户在创建云服务器或为云服务…

    2022年6月30日
    84
  • 数据结构(一)线性存储结构[通俗易懂]

    线性结构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系。线性结构拥有两种不同的存储结构,即顺序存储结构和链式存储结构。顺序存储的线性表称为顺序表,顺序表中的存储元素是连续的,链式存储的线性表称为链表,链表中的存储元素不一定是连续的,元素节点中存放数据元素以及相邻元素的地址信息。线性结构中存在两种操作受限的使用场景,即队列和栈。栈的操作只能在线性表的一端进行,…

    2022年4月15日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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