C# 从 URL 获取不带转义字符的字符串

本文关键字:转义字符 字符串 URL 获取 | 更新日期: 2023-09-27 18:30:39

这是我的字符串

string link = "http%3A%2F%2Feurocommunicator.ge%2Fgeo%2Fview_myth%2F229"

我想获取绝对 uri,但它抛出 uri 无效的异常:

  Uri uri = new Uri(link);
这刺有什么

问题?我想得到这样的东西:

http://eurocommunicator.ge/geo/view_myth/229

C# 从 URL 获取不带转义字符的字符串

您可以使用:

string decodedUrl = Uri.UnescapeDataString(url)

https://msdn.microsoft.com/en-us/library/system.uri.unescapedatastring(v=vs.110).aspx

在 linqpad 中像一个魅力一样工作

void Main()
{
    var url="http%3A%2F%2Feurocommunicator.ge%2Fgeo%2Fview_myth%2F229";
    string decodedUrl = Uri.UnescapeDataString(url);
    Console.WriteLine(decodedUrl);
}

您可以尝试这样做:

Uri uri = new Uri("http://eurocommunicator.ge/geo/view_myth/229");

string link = "http%3A%2F%2Feurocommunicator.ge%2Fgeo%2Fview_myth%2F229"
Uri uri = new Uri(Server.UrlDecode(link));
好的,

我的失败HttpUtility.UrlDecode工作正常,我使用的是HtmlDecode而不是它。我有多傻