c# - 如何从 EnumerateFiles 中删除目录?

标签 c# file directory enumerate

所以我正在开发一个程序,它将列出目录中的所有文件。很简单。基本上,当我这样做时:List<string> dirs = new List<string>(Directory.EnumerateFiles(target)); ,我不希望它包含目录和所有内容。只是文件名。当我运行我的代码时;

    List<string> dirs = new List<string>(Directory.EnumerateFiles(target));
    Console.WriteLine($"Folders and files in this directory:\n");
    foreach (string i in dirs) {
        Console.WriteLine($"> {i}");
    }

它给了我以下信息:

C:\Users\Camden\Desktop\Programming\Visual Studio\C#\DirectoryManager\DirectoryManager\bin\Debug\DirectoryManager.exe

我只想要 DirectoryManager.exe 部分,所以我查了一下,发现您可以替换字符串中的字符串。像这样:i.Replace(target, ""); .然而,这并没有做任何事情,它只是像往常一样运行。为什么它不替换,我应该如何替换?

最佳答案

使用 System.IO.Path 类中的方法。

        var fullfile = @"C:\Users\Camden\Desktop\Programming\Visual Studio\C#\DirectoryManager\DirectoryManager\bin\Debug\DirectoryManager.exe";
        var fileName = Path.GetFileName(fullfile); // DirectoryManager.exe
        var name = Path.GetFileNameWithoutExtension(fullfile);  // DirectoryManager

关于c# - 如何从 EnumerateFiles 中删除目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50081190/

相关文章:

c# - 当没有字节写入超过给定时间段时如何取消流 CopyToAsync

c# - 选择数组 C# 的替代项

javascript - 将文件发送到 api 请求从 python 到 react-native javascript 转换代码

python - 在Python中加载15GB文件

perl - 如何使用一条语句读取 Perl 中的目录?

c# - 适用于 .NET 的 AWS SDK 无法使用 IIS 访问凭证

c# - OpenPop - Gmail - GetMessageCount() 返回 0(零)

c - 如何从 C 中的 .txt 文件读取数据?

java - Java创建目录的问题

c# - 如何将 List<System.IO.FileInfo> 的类型转换为 List<string>?