如何使用c#获得给定路径(可以是目录或文件,甚至是完整路径)的完整路径?
本文关键字:路径 文件 何使用 | 更新日期: 2023-09-27 18:12:24
我得到的最接近的是使用new FileInfo(path).FullPath
,但据我所知FileInfo仅用于文件,而不是目录。
请参阅我对Jon Skeet回答的评论。
Path类还提供了许多很好的方法和属性,例如GetFullPath()。
p ath.GetFullPath()
我想是-
DirectoryInfo.FullName
试试这个:
String strYourFullPath = "";
IO.Path.GetDirectoryName(strYourFullPath)
使用扩展FileSystemInfo
的DirectoryInfo
类,并将为文件或目录提供正确的结果。
string path = @"c:'somefileOrDirectory";
var directoryInfo = new DirectoryInfo(path);
var fullPath = directoryInfo.FullName;
使用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);
根据msdn, FileSystemInfo.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'
可以使用file。