c# - Directory.GetFiles : how to get only filename, 不是完整路径?

标签 c# filepath getfiles

<分区>

Possible Duplicate:
How to get only filenames within a directory using c#?

我想使用 C# 获取文件夹中的文件列表。
我的目标:["file1.txt", "file2.txt"]

所以我这样写:

string[] files = Directory.GetFiles(dir);

不幸的是,我得到了这个输出:["C:\\dir\\file1.txt", "C:\\dir\\file2.txt"]

之后我可以删除不需要的“C:\dir\”部分,但是有没有更优雅的解决方案?

最佳答案

您可以使用 System.IO.Path.GetFileName 来执行此操作。

例如,

string[] files = Directory.GetFiles(dir);
foreach(string file in files)
    Console.WriteLine(Path.GetFileName(file));

虽然您可以使用 FileInfo,但它比您已经使用的方法(仅检索文件路径)要重量级得多。所以我建议您坚持使用 GetFiles,除非您需要 FileInfo 类的附加功能。

关于c# - Directory.GetFiles : how to get only filename, 不是完整路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12524398/

相关文章:

c# - XAML 转换器如何做更多事情?

c# - 将 UUID 转换为 OID,将 Java 代码转换为 C# - 这是如何工作的?

c# - 使用正则表达式匹配字符串 c#

c# - 网络应用设计

java - 如何使用java将文件夹从一个位置移动到另一个位置

filepath - 如何防止 MSYS 为 pscp 转换远程文件路径

c# - 获取文件时出现 UnauthorizedAccessException

c# - 创建文件信息列表时如何跳过未经授权访问的文件夹?