c# - 新的 Uri,但保持空间逃脱
问题描述
创建 Uri 的新实例时,字符串中的空格使用 %20 进行转义。
new Uri("https://www.test.com?city=New York")
将转换为:
https://www.test.com?city=New%20York
但是另一种方式:
new Uri("https://www.test.com?city=New%20York")
将转换为:
https://www.test.com?city=New York
创建新的 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
推荐阅读
- java - getActualMaximum 函数返回 kotlin 中不存在的值
- html - 菜单中心如何正确(СSS)
- r - 使用此特定模式“digitsXdigits”在 R 中查找字符串
- flutter - 无法调用函数 cloud_functions
- android - 自定义适配器不适用于片段中的 RecyclerView
- python - 如何编写一个 select sum(col), count(other_col) form pandas_df
- node.js - Nodejs - 来自 OData $batch 的响应正文状态
- angular - Angular:推,然后删除一个项目
- android - CoordinatorLayout 内的 ViewPager 和 TabLayout 结果为 NoMatchingViewException
- hibernate - 我们的数据库有大约 2000 个表,我应该使用 ORM 框架吗?