2

我得到的最接近的是 using new FileInfo(path).FullPath,但据我所知 FileInfo 仅用于文件,而不是目录。

有关上下文,另请参阅我对Jon Skeet 的回答的评论。

4

8 回答 8

4

Path 类还为您提供了许多不错的方法和属性,例如GetFullPath()。有关所有详细信息,请参阅MSDN

于 2011-10-25T09:05:39.543 回答
2

ath.GetFullPath()

于 2011-10-25T09:05:15.257 回答
0

DirectoryInfo类用于目录路径。与 FileInfo 的工作原理相同。

请注意,路径的属性称为 FullName。

DirectoryInfo di = new DirectoryInfo(@"C:\Foo\Bar\");
string path = di.FullName;

如果要确定路径是文件还是目录,可以使用Path类中的静态方法:

string path1 = @"C:\Foo\Bar.docx";
string path2 = @"C:\Foo\";

bool output1 = Path.HasExtension(path1); //Returns true
bool output2 = Path.HasExtension(path2); //Returns false

但是,路径也可能包含类似于扩展的内容,因此您可能希望将其与其他一些检查结合使用,例如bool isFile = File.Exists(path);

于 2011-10-25T09:01:49.457 回答
0

您可以使用file.getdirectory来完成此操作。

于 2011-10-25T09:02:30.587 回答
0

我想这是-

DirectoryInfo.FullName
于 2011-10-25T09:02:40.087 回答
0

试试这个:

String strYourFullPath = "";
IO.Path.GetDirectoryName(strYourFullPath)
于 2011-10-25T09:02:51.103 回答
0

使用DirectoryInfo扩展的类,FileSystemInfo它将为文件或目录提供正确的结果。

        string path = @"c:\somefileOrDirectory";
        var directoryInfo = new DirectoryInfo(path);
        var fullPath = directoryInfo.FullName;
于 2011-10-25T09:05:10.913 回答
0

根据msdnFileSystemInfo.FullName获取目录或文件的完整路径,并且可以应用到一个FileInfo.

FileInfo fi1 = new FileInfo(@"C:\someFile.txt");
Debug.WriteLine(fi1.FullName); // Will produce C:\someFile.txt
FileInfo fi2 = new FileInfo(@"C:\SomeDirectory\");
Debug.WriteLine(fi2.FullName); // Will produce C:\SomeDirectory\
于 2011-10-25T09:10:30.817 回答