用 C# 写脚本 如何输出文件夹内所有文件名

大部分在 Windows 下的脚本都是使用 bat 或 cmd 写的,这部分的脚本对我来说可读性不好。这个可读性也是很主观的,对我来说用 C# 写脚本的可读性很强,但是换个小伙伴就不是了。在 .NET Core 下的 C# 可以通过 dotnet run 运行代码起来,此时特别适合用来写脚本

我需要输出一个文件夹里面的根目录的所有文件,输出一个文件夹的顶层文件的方法可以使用 Directory.GetFiles 拿到文件夹的顶层文件,然后遍历输出。此时注意需要引用 System.IO 命名空间

using System.IO;

        static void Main(string[] args)
        {
            var folder = @"e:\lindexi\";
            foreach (var file in Directory.GetFiles(folder))
            {
                Console.WriteLine(file);
            }

            Console.Read();
        }

这就是整个脚本的核心代码了,十分简单,通过 dotnet run 命令就可以跑起来

额外的,在 Directory.GetFiles 可以输入通配符进行选择输出的文件

            foreach (var file in Directory.GetFiles(folder, "*.enbx"))
            {
                Console.WriteLine(file);
            }

如上面代码就输出文件夹里面后缀是 .enbx 的文件

如果想要遍历所有的子文件夹的文件,可以通过加上 SearchOption.AllDirectories 参数

            foreach (var file in Directory.GetFiles(folder, "*.enbx", SearchOption.AllDirectories))
            {
                Console.WriteLine(file);
            }

本文代码放在 github 欢迎小伙伴访问

posted @ 2020-04-29 08:25  lindexi  阅读(644)  评论(0编辑  收藏  举报