Как я могу получить короткий путь из папки Vb.Net - PullRequest
1 голос
/ 29 апреля 2020

У меня есть несколько путей, которые я получаю из папки, когда я помещаю свою программу, но я хочу начать путь с того места, где находится программа.

Я помещаю программу на рабочий стол и перетаскиваю папку вызовите "Папка" в моей программе и получите полный путь, и я хочу получить только от того, где находится программа.

например:

what i want:
tools\test.exe
tools\test2\test.exe

normal:
C:\Users\xxx\Desktop\Folder\tools\test.exe
C:\Users\xxx\Desktop\Folder\tools\test2\test.exe

мой код:

Dim files() As String = e.Data.GetData(DataFormats.FileDrop)

        For Each path In files

            For Each Dir As String In IO.Directory.GetDirectories(path)

                ListBox1.Items.Add(path)

            Next

        Next

Ответы [ 3 ]

0 голосов
/ 29 апреля 2020

Попробуйте под строкой кода:

Dim relpath=System.IO.Directory.GetCurrentDirectory().Replace(System.IO.Directory.GetParent(System.IO.Directory.GetCurrentDirectory()).Parent.Parent.FullName,"")
0 голосов
/ 29 апреля 2020

Это также должно работать:

Dim relPath = fullPath.Substring(Directory.GetCurrentDirectory.Length + 1)
0 голосов
/ 29 апреля 2020

Это должно работать:

Dim relativePath = fullPath.Substring(Application.StartupPath.Length + 1)

1 добавляется для удаления sla sh, который, я не думаю, включен в Application.StartupPath.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...