C# 新Uri,但保留转义的空格
创建Uri的新实例时,字符串中的空格用%20转义C# 新Uri,但保留转义的空格,c#,.net,.net-core,C#,.net,.net Core,创建Uri的新实例时,字符串中的空格用%20转义 新Uri(“https://www.test.com?city=New 纽约”) 将转换为: https://www.test.com?city=New%20York 然而,另一方面: 新Uri(“https://www.test.com?city=New%20York“” 将转换为: https://www.test.com?city=New 约克 在创建新Uri时是否可以不取消景观?换句话说,我想保持 https://www.test.com
新Uri(“https://www.test.com?city=New 纽约”)
将转换为:
https://www.test.com?city=New%20York
然而,另一方面:
新Uri(“https://www.test.com?city=New%20York“”
将转换为:
https://www.test.com?city=New 约克
在创建新Uri时是否可以不取消景观?换句话说,我想保持
https://www.test.com?city=New%20York
在第二个示例中。小提琴
如果运行以下代码,则可以获得转义输入:
string x = "https://www.test.com?city=New%20York";
Uri url = new Uri(x);
Console.WriteLine("written to string: " + url.ToString());
Console.WriteLine("query: " + url.Query);
Console.WriteLine("AbsoluteUri: " + url.AbsoluteUri);
Console.WriteLine("OriginalString: " + url.OriginalString);
这是示例输出:
written to string: https://www.test.com/?city=New York
query: ?city=New%20York
AbsoluteUri: https://www.test.com/?city=New%20York
OriginalString: https://www.test.com?city=New%20York
这回答了你的问题吗?那么,为什么不先替换%20,比如:
newURI(str.replace(“%20”),而不是真正的MathewHD。当使用Uri.EscapeUriString(URL)
时,它会将URL调整为https://www.test.com/?city=New%2520York
@AshkanMobayenKhiabani确实是可能的。这是在小提琴中使用.NET 5