VB.NET中绝对路径的相对路径
Posted
技术标签:
【中文标题】VB.NET中绝对路径的相对路径【英文标题】:Relative path to absolute path in VB.NET 【发布时间】:2011-02-05 02:01:57 【问题描述】:我正在编写一个 VB.NET 控制台应用程序,它采用相对路径并吐出所有文件名,或者无效输入的错误。我在从相对路径获取 PhysicalPath 时遇到问题
例子:
我在文件夹C:\Documents and Settings\MehdiAnis.ULTIMATEBANGLA\My Documents\Visual Studio 2005\Projects\SP_Sol\SP_Proj\bin\Debug
我的应用程序SP.exe
也在同一个文件夹中。
我运行:"SP.exe ..\"
。输出将是文件夹 "C:\Documents and Settings\MehdiAnis.ULTIMATEBANGLA\My Documents\Visual Studio 2005\Projects\SP_Sol\SP_Proj\bin"
我运行:"SP.exe ..\\..\"
。输出将是文件夹 "C:\Documents and Settings\MehdiAnis.ULTIMATEBANGLA\My Documents\Visual Studio 2005\Projects\SP_Sol\SP_Proj"
我运行:"SP.exe ..\\..\\..\"
。输出将是文件夹 "C:\Documents and Settings\MehdiAnis.ULTIMATEBANGLA\My Documents\Visual Studio 2005\Projects\SP_Sol"
目前我正在处理一个相对路径,但没有更多:
If Source.IndexOf("..\") = 0 Then
Dim Sibling As String = Directory.GetParent(Directory.GetCurrentDirectory()).ToString()())
Source = Source.Replace("..\", Sibling)
End If
如何轻松处理多个..\
?
【问题讨论】:
【参考方案1】:您正在寻找System.IO.Path.GetFullPath()。它应该处理任何类型的相对路径。
【讨论】:
@Mehdi:由于这看起来是您问题的解决方案,因此最好使用左上/下箭头旁边的复选标记将其标记为答案。 @Zach Johnson:感谢您显示 CheckMark(TickMark 图标以接受答案。我不知道,灰色的图标看起来像是不活动的。以上是关于VB.NET中绝对路径的相对路径的主要内容,如果未能解决你的问题,请参考以下文章