Я пишу консольное приложение 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
Как я могу легко обрабатывать несколько ..\
?