`
nintenyun
  • 浏览: 26899 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

C#实现递归列目录

阅读更多

using System;
using System.Linq;
using System.Text;
using System.IO;
using System.Collections;

namespace TestApplicationFileSystem
{
    class Program
    {
       
        private static void ListFile(FileSystemInfo fileinfo,int level)
        {
            if (!fileinfo.Exists)
            {
                Console.Write("无此文件夹或路径");
                return;
            }
            else
            {
                string preStr = "";
                for (int i = 0; i < level; i++)
                {
                    preStr += "-";
                }
                DirectoryInfo di = fileinfo as DirectoryInfo;
                FileSystemInfo[] files = di.GetFileSystemInfos();
                for (int i = 0; i < files.Length; i++)
                {
                    FileInfo file = files[i] as FileInfo;
                    if (file != null)
                    {
                        Console.Write(" "+preStr+file.Name);
                        Console.Write("\n");
                    }
                    else
                    {
                        Console.Write(" "+preStr+files[i].Name + "(文件夹)");
                        Console.Write("\n");
                        ListFile(files[i],level+1);
                        
                       
                    }

                }
            }
            
        }
        static void Main(string[] args)
        {
            FileSystemInfo f = new DirectoryInfo("c:\\Test");
            ListFile(f,0);
            Console.ReadLine();
            
        }
    }
}
 
分享到:
评论

相关推荐

    C#用递归算法实现:一列数的规则如下: 1、1、2、3、5、8、13、21、34,求第30位数是多少

    /// 一列数的规则如下: 1、1、2、3、5、8、13、21、34求第30位数是多少, 用递归算法实现。(C#语言) /// /// &lt;param name=pos&gt;&lt;/param&gt; /// &lt;returns&gt;&lt;/returns&gt; public int GetNumberAtPos(int pos) { if(pos==0|...

    C#递归的最好体现,初学者可借鉴

    如果是,它会列出该目录下的所有文件,并对每个子目录调用自身,从而递归地遍历整个目录结构。这个过程会一直持续到没有更多的子目录为止,即达到了基本情况。 在WinForms环境中,你可以将这些信息展示在诸如...

    c# 基于文件目录的递归查询显示 !

    以上就是使用C#进行基于文件目录的递归查询和显示的基本步骤。这种方法在需要遍历文件系统并呈现层次结构的场合非常有用,例如在文件管理器应用或搜索功能中。通过这种方式,你可以轻松地展示复杂的目录结构,让用户...

    C# TreeView 递归实现(窗体应用程序)

    通过分析和理解这些代码,你可以了解到如何在C#窗体应用程序中实现`TreeView`的递归填充,从而展示文件系统的完整结构。这在文件管理、资源浏览等场景中非常有用。记得在实际应用中考虑异常处理,例如处理不存在的...

    c#用递归动态创建控件(很实用)

    本教程将详细解释如何使用递归方法来实现这一目标,这是一种高效且灵活的技术。 首先,理解递归的基本概念至关重要。递归是一种编程技术,它通过调用自身来解决问题或执行任务。在我们的场景中,我们将用递归来生成...

    C#实现,遍历ftp上的文件夹,文件名

    本篇文章将深入探讨如何使用C#实现遍历FTP服务器上的文件夹和文件名。 首先,要实现FTP功能,你需要引入`System.Net`命名空间中的`FtpWebRequest`和`FtpWebResponse`类。这两个类提供了与FTP服务器交互的基础接口。...

    C#删除FTP文件夹(有子文件夹和子文件)的方法

    它支持FTP的基本命令,如上传、下载、列出目录等。 3. **递归删除**:递归地遍历文件夹及其子文件夹,逐个删除。 #### 三、核心代码解析 首先,我们需要定义一个方法来删除FTP上的单个文件夹,如下所示: ```...

    C# 实现Windows文件资源管理器

    总的来说,创建一个C#实现的Windows文件资源管理器需要对C#语法、.NET Framework以及文件系统操作有深入的理解。通过这个项目,开发者不仅可以提升编程技能,还能更好地掌握GUI应用的开发流程。

    C# winform datagridview 动态列值计算_datagridview动态列值计算_fairlyfl7_winf

    本篇文章将深入探讨如何在C# WinForm应用程序中实现DataGridView的动态列值计算。 首先,我们需要了解DataGridView的基本概念。DataGridView是WinForms中的一个强大控件,可以用来展示表格数据,并允许用户进行编辑...

    C#DataGridView某列形成树形

    然而,有时我们可能需要在其中的一列实现树形结构,以展示层次化信息。这样的功能可以增强数据的可读性和交互性,尤其是在处理具有嵌套关系的数据时。本篇将详细讲解如何在`DataGridView`的一列中实现树形结构。 ...

    visual c# 遍历操作系统目录

    对于每个目录,它首先打印目录的完整路径,然后列出所有文件,最后递归调用自身处理子目录。 除了GetFiles()和GetDirectories(),DirectoryInfo还提供了其他方法,如GetFileSystemInfos(),它可以同时获取目录和...

    C#实现简单资源管理器

    - **ListView控件**:用于显示指定目录下的文件列表,可以设置不同的列来展示文件名、大小、修改日期等信息。 3. **文件和目录操作**: - 使用`System.IO`命名空间中的类,如`Directory`和`FileInfo`,来获取目录...

    小游戏之九宫数字(C#实现:回朔递归算法)

    在本文中,我们将深入探讨如何使用C#编程语言实现经典的九宫格数字游戏,这是一个基于回溯递归算法的问题。九宫格数字游戏,也被称为数独,是一种逻辑谜题,玩家需要根据已给定的数字填充一个3x3的小九宫格,使得每...

    栈和递归遍历实例

    递归方法则是通过定义一个函数,该函数接收一个目录路径,列出其所有子目录和文件,然后对每个子目录调用自身。这样,函数会逐级向下遍历,直到到达叶子节点(没有子目录的目录)。递归方法自然地体现了DFS,同时也...

    C#获取目录结构

    例如,以下代码展示了如何递归获取指定目录下的所有文件和子目录: ```csharp using System.IO; public static void GetDirectoryStructure(string path) { DirectoryInfo di = new DirectoryInfo(path); ...

    C#获取本地磁盘目录完整源码

    本文将详细讲解如何通过C#代码来实现这一功能,并提供完整的源码示例。 首先,我们需要引入System.IO命名空间,这个命名空间包含了处理文件和目录的所有类。在C#中,`Directory`类提供了许多静态方法用于操作目录,...

    递归显示数据库目录树+BBS

    在编程语言如Python、Java或C#中,可以通过定义一个函数,该函数接受当前目录作为参数,列出其所有子目录和文件,然后对每个子目录调用自身来实现。 2. **数据库连接**:要访问数据库,需要建立连接。这通常涉及...

    用c#打印杨辉三角.rar

    在这个“用c#打印杨辉三角”的项目中,我们将探讨如何利用C#来实现这一数学上的经典问题。 杨辉三角,也称为帕斯卡三角,是一个二维的数字阵列,它的每一行都是一个等差数列的二项式系数。这个三角形在数学中有许多...

    C# 实现数独解答C# 实现数独解答C# 实现数独解答

    在C#编程语言中实现数独解答通常涉及到算法设计、递归和回溯等概念。下面我们将深入探讨这些知识点。 1. **C#基础**:C#是Microsoft开发的一种面向对象的编程语言,广泛应用于Windows平台的软件开发,包括桌面应用...

Global site tag (gtag.js) - Google Analytics