C# 将字符串转换为简单格式为.NET的uri

C# 将字符串转换为简单格式为.NET的uri,c#,.net,C#,.net,我想转换,例如: Aión转换为URI字符串,因此使用System.URI.EscapeDataString将其转换为Ai%C3%B3n,但我希望是Ai%F3n 我如何翻译字符,我想要的方式 我使用的是常规winform应用程序,而不是ASP页面 这会给你 这会给你 感谢@Paul McCowat和该链接上的最后一个asnwer,我想出了一个可以满足我需要的函数: public static string ConvertToUri(string uri_string) {

我想转换,例如:

Aión转换为URI字符串,因此使用System.URI.EscapeDataString将其转换为Ai%C3%B3n,但我希望是Ai%F3n

我如何翻译字符,我想要的方式

我使用的是常规winform应用程序,而不是ASP页面

这会给你

这会给你


感谢@Paul McCowat和该链接上的最后一个asnwer,我想出了一个可以满足我需要的函数:

public static string ConvertToUri(string uri_string)
        {
            StringBuilder Encoded = new StringBuilder();
            foreach (char Ch in uri_string)
            {
                if (Uri.EscapeUriString(Ch.ToString()) != Ch.ToString())
                {
                    Encoded.Append("%");
                    Encoded.AppendFormat("{0:x2}", Encoding.Unicode.GetBytes(Ch.ToString())[0]);
                }
                else
                {
                    Encoded.Append(Ch);
                }
            }
            return Encoded.ToString();
        }

感谢@Paul McCowat和该链接上的最后一个asnwer,我想出了一个可以满足我需要的函数:

public static string ConvertToUri(string uri_string)
        {
            StringBuilder Encoded = new StringBuilder();
            foreach (char Ch in uri_string)
            {
                if (Uri.EscapeUriString(Ch.ToString()) != Ch.ToString())
                {
                    Encoded.Append("%");
                    Encoded.AppendFormat("{0:x2}", Encoding.Unicode.GetBytes(Ch.ToString())[0]);
                }
                else
                {
                    Encoded.Append(Ch);
                }
            }
            return Encoded.ToString();
        }

如果它输出,这不是我需要的。。。我需要人工智能%F3n和。。。在非服务器应用程序中,我就是找不到函数。如果它输出该函数,这不是我需要的。。。我需要人工智能%F3n和。。。在非服务器应用程序中,我就是找不到函数。你能不能参考System.Web.dll并使用htmlity.htmlencode?我已经检查过了,并生成了与你下面所说的相同的输出,HttpUtility不是htmlity?这听起来像是一个字符集问题。这篇文章是关于可能需要的内容,我会再看一看你能不能不引用System.Web.dll并使用HtmlUtility.htmlencode我已经检查过了,并生成了与你下面所说的相同的输出,HttpUtility不是HtmlUtility这听起来像是一个字符集问题。这篇文章是关于可能需要的内容,我再看一下,对于代码范围大于256的字符,此代码不会产生正确的结果。请确保您对此感到满意。对于代码范围大于256的字符,此代码不会产生正确的结果。确保你对此感到满意。