我想实现一个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);
}
答案 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);