Подтвердить что ты не робот

Удаление %20 из URI Относительный путь

Я создаю относительный путь из каталога 1 в другой. Если свойство OutputDirectoryName представляет собой каталог, содержащий пробелы, пробелы кодируются с использованием %20, а не пробела. Я создаю относительный путь к папке Windows, поэтому я должен иметь свой путь relatiave, используя пробелы. Есть ли простой способ указать, как кодируется URI? Я знаю, что мог бы сделать замену activeng на relativePath.ToString(), но мне интересно, есть ли более эффективная реализация. Спасибо.

public string GetOutputDirectoryAsRelativePath(string baseDirectory)
{
    Uri baseUri = new Uri(baseDirectory);
    Uri destinationUri = new Uri(OutputDirectoryName);
    Uri relativePath = baseUri.MakeRelativeUri(destinationUri);
    return relativePath.ToString();
}
4b9b3361

Ответ 3

string sRelativeFilePath = Uri.UnescapeDataString(new Uri(sAbsolutePath + "\\", false).MakeRelative(new Uri(filename)));