“解码”特殊字符:%c3 - > Ö,%20 - >空间等

时间:2015-12-22 18:35:55

标签: c#

我想实现一个Dropdown,它会显示我在文件夹中搜索过的项目。

所以,问题是我是德国人,我们有像Ä,Ö,Ü等人物。

这些字符以奇怪的方式显示。例如,charÖ是“%c3”。此外,空格显示为“%20”。

是否有一种简单的方法可以在没有string.Replace功能的情况下更改它们?

我的代码:

try
{
    string dirPath = (Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + 
        "\\Arma 3 - Other Profiles");

    List<string> dirs = new List<string>(Directory.EnumerateDirectories(dirPath));

    foreach (var dir in dirs)
    {
        HttpUtility.UrlDecode(dir);
        MessageBox.Show(dir);
        comboBox1.Items.Add(dir.ToString());
    }
}
catch (UnauthorizedAccessException UAEx)
{
    Console.WriteLine(UAEx.Message);
}
catch (PathTooLongException PathEx)
{
    Console.WriteLine(PathEx.Message);
}

2 个答案:

答案 0 :(得分:2)

您可以使用:

HttpUtility.UrlDecode(myString)

https://msdn.microsoft.com/en-us/library/4fkewx0t(v=vs.110).aspx

答案 1 :(得分:0)

下面:

HttpUtility.UrlDecode(dir);

你UrlDecode字符串,然后扔掉结果。你可能想写:

dir = HttpUtility.UrlDecode(dir);