2016-11-18 14 views
0

У меня есть путь, хранящийся в переменной сказатьКак найти абсолютный путь, используя относительный путь в C#

string partialPath = '\editors\tinymce' 

Я хочу, чтобы весь путь выше тьфу. Фактический путь к указанному файлу: «D: \ Back up \ editors \ tinymce». Как это сделать на C#. Благодаря

+0

Предупреждение: не добавляйте «\» в путь, иначе вы получите D: \ editors \ tinymce –

+0

Относительные пути относятся к * текущей * папке или определенной папке. Если ваша текущая папка находится в C :, путь указывает на 'c: \ editors \ tinymce'. Если вы хотите, чтобы этот путь ссылался на другой диск, вы должны указать его. Почему 'D:' вместо, например, 'E: \' или 'Z: \'? –

ответ

3
var dir = Directory.GetCurrentDirectory(); 
var output = Path.Combine(dir, partialPath); 
3

Это может сделать трюк для вас

string partialPath = "\editors\tinymce"; 
string fullPath = Path.GetFullPath(partialPath); 

выход:

D: \ редакторы \ TinyMCE

В то время как

Это может сделать t рик для вас

string partialPath = "editors\tinymce"; 
fullPath = Path.GetFullPath(partialPath); 

выход:

D: \ Резервное копирование \ редакторы \ TinyMCE

+0

Но если я использую его, я получаю этот путь –

+0

C: \ Back up \ editors \ tinymce –

+0

@SamDaniel, который является правильным результатом. Вот что такое * относительный * путь - относительно некоторой папки. Если ни один не указан, папка является текущей. Если вы хотите, чтобы он указывал на * другой * диск, вам нужно указать, что вы хотите. ОС не будет искать все подключенные диски, чтобы найти соответствие. –

0

пожалуйста, попробуйте ниже код:

код:

string partialPath = "\editors\tinymce"; 
var output = Server.MapPath(partialPath); 
string str = HttpContext.Current.Server.MapPath(partialPath); 

вы можете получить путь к выводам var и str string.

дайте нам знать.

+0

Если я использую это, то указывается My C-диск, но фактический файл находится на диске D –

+0

string partialPath = "\\ editors \\ tinymce"; – kkakadiya

+0

строка partialPath = "\\ редакторы \\ tinymce"; var output = Server.MapPath (partialPath); – kkakadiya