打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C语言‖遍历指定目录

下面提供了三个函数,这些函数可以帮助你遍历指定目录的所有子目录和文件。


csharp

using System.IO;

using System.Collections.Generic;


public class DirectoryTraversal

{

    // 递归遍历目录,返回所有子目录和文件的路径

    public List<string> RecursiveDirectoryTraversal(string path)

    {

        List<string> result = new List<string>();

        RecursiveDirectoryTraversalInternal(path, "", result);

        return result;

    }


    // 递归遍历目录的核心方法,用于实现递归遍历并添加路径到结果列表

    private void RecursiveDirectoryTraversalInternal(string path, string subPath, List<string> result)

    {

        DirectoryInfo info = new DirectoryInfo(path);


        if (info.Exists)

        {

            foreach (DirectoryInfo subDir in info.GetDirectories())

            {

                RecursiveDirectoryTraversalInternal(subDir.FullName, subPath + subDir.Name + "/", result);

            }


            foreach (FileInfo file in info.GetFiles())

            {

                result.Add(subPath + file.Name);

            }

        }

    }


    // 获取指定目录下所有子目录的名称,不包括文件

    public List<string> GetSubDirectoryNames(string path)

    {

        List<string> result = new List<string>();

        RecursiveDirectoryTraversalInternal(path, "", result);

        return result;

    }

}


这个类中的方法可以用于遍历指定目录的所有子目录和文件。RecursiveDirectoryTraversal方法会返回所有子目录和文件的完整路径列表,而GetSubDirectoryNames方法则只会返回子目录的名称列表。请注意,在实际使用中,你需要确保有足够的权限访问指定的目录。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
C#读取指定文件夹中的所有文件
保持更新:C# 文件操作
【C#】C#获取文件夹下的所有文件
DirectoryInfo类
Python读取所有文件夹名称的实现方法
Java 关于File使用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服