【发布时间】:2019-02-24 15:32:51
【问题描述】:
为什么 DirectoryInfo 不提供统一的方法来获取文件夹的限定名称。
在这个例子中:
class Program
{
static void Main(string[] args)
{
System.IO.DirectoryInfo DirInfo = new System.IO.DirectoryInfo(@"C:\TEMP\");
Console.WriteLine(DirInfo.FullName);
System.IO.DirectoryInfo DirInfo2 = new System.IO.DirectoryInfo(@"C:\TEMP");
Console.WriteLine(DirInfo2.FullName);
Console.ReadLine();
}
}
不管目录是否真的存在,FullName 只是将用户输入反映到对象中,但你不能确定你得到的路径最后带有“\”。
在 MSDN 文档中提到了从 FileSystemInfo 的继承,可以通过属性 FullPath 检索 FQN,但我似乎无法从 DirectoryInfo 的实例访问它。
是否有技巧或其他方法/字段来确保路径始终具有相同的格式?
【问题讨论】:
-
为什么这对您如此重要?你到底想达到什么目的?
-
我不确定您的实际问题是什么。如何在目录路径的末尾始终得到一个 \?
-
如果你想访问这个目录中的文件/目录,你可以使用
Directory.GetDirectories(path)或Directory.GetFiles(path)包括它们的路径,并且这些都应该具有相同的格式 -
嗨,谢谢你的回答,我只是不确定框架是否为此提供了一个属性,因为在生产场景中,我认为如果输出以一种没有人的方式均衡会更容易必须处理额外的代码来实现这一点,但我认为这可以关闭。
-
@Rafalon 这肯定是一种方式,在我的情况下,该目录最初没有文件或目录。