首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在C#中解码带有重音的url

如何在C#中解码带有重音的url
EN

Stack Overflow用户
提问于 2015-09-01 18:21:03
回答 2查看 4.2K关注 0票数 2

我一直在试图解码%E9(é)。

代码语言:javascript
复制
WebUtility.HtmlDecode("%E9")

不起作用。它放了一个?签而不是签。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-09-01 18:59:44

我对此进行了测试,并发现HttpUtility.UrlDecode("%E9")返回您提到的问号。似乎您必须手动指定适当的编码,才能正确地使用%E9编码的值。

你可以试试:

代码语言:javascript
复制
HttpUtility.UrlDecode("%E9", System.Text.UnicodeEncoding.Default);

代码语言:javascript
复制
HttpUtility.UrlDecode("%E9", System.Text.UnicodeEncoding.UTF7);

两者都应该返回您所期望的解码字符。

票数 6
EN

Stack Overflow用户

发布于 2015-09-01 19:23:11

对于Url解码,您应该使用UrlDecode而不是HtmlDecode。另外,您需要指定编码才能工作,因为编码值%E9不是UTF-8值,并且默认情况下UrlDecode返回使用UTF-8解码的字符串。

除了Lukasz的答案之外,您还可以使用:

代码语言:javascript
复制
HttpUtility.UrlDecode("%E9", System.Text.Encoding.GetEncoding("iso-8859-1"));
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32338445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档