如何在不包含目录路径的情况下返回目录文件/文件夹
本文关键字:返回 文件 文件夹 情况下 路径 包含目 | 更新日期: 2023-09-27 18:25:34
我正在尝试提取文件夹中的文件列表,目前正在使用:
string[] files = Directory.GetFiles(txtbxNewFolder.Text);
但这会返回类似"C:''Users''Dahlia''Desktop''NewFolder''jerry.txt"的内容。有没有办法只返回"jerry.txt",或者我需要对数组字符串进行某种拆分?
我还试图返回一个目录中的文件夹列表,目前正在使用:
string[] folders = Directory.GetDirectories(txtbxOldFolder.Text);
但这会返回类似"C:''Users''Dahlia''Desktop''NewFolder''folder1"的内容。有没有办法只返回"folder1",或者我需要对数组字符串进行某种拆分?
使用LINQ,您可以获得以下文件的列表:
Directory.GetFiles(txtbxNewFolder.Text).Select(f => Path.GetFileName(f));
尽管我可能会使用而不是GetFiles
Directory.EnumerateFiles(txtbxNewFolder.Text).Select(f => Path.GetFileName(f));
获取目录名并不是那么简单,但这应该有效(未经测试):
Directory.GetDirectories(txtbxOldFolder.Text)
.Select(d => new DirectoryInfo(d).Name);
类似地,还有一个:
Directory.EnumerateDirectories(txtbxOldFolder.Text)
.Select(d => new DirectoryInfo(d).Name);
您可以使用Path.GetFileName和LINQ
例如:
string[] files = Directory.GetFiles(txtbxNewFolder.Text)
.Select(f => Path.GetFileName(s))
.ToArray();
查看FileInfo和DirectoryInfo类。
你可以做:
foreach (String file in files) {
var fi = new FileInfo(file);
Console.Out.WriteLine(fi.Name);
}
DirectoryInfo类似。