C# C将ISO-8859-1字符转换为实体编号

C# C将ISO-8859-1字符转换为实体编号,c#,encode,iso-8859-1,C#,Encode,Iso 8859 1,我似乎不知道如何将ISO-8859-1字符(如é)转换为它的实体号&233 我希望能够采取一个字符串,如:钢装饰 并将其转换为:钢铁D&233;corHttpUtility.HtmlEncode可以实现这一点。它驻留在System.Web.dll中,但它不能与.NET 4客户端配置文件一起工作。假设您不关心HTML中特殊的HTML编码字符,例如使用LINQ string toDec(string input) { Dictionary<string, char> resDec

我似乎不知道如何将ISO-8859-1字符(如é)转换为它的实体号&233

我希望能够采取一个字符串,如:钢装饰


并将其转换为:钢铁D&233;cor

HttpUtility.HtmlEncode可以实现这一点。它驻留在System.Web.dll中,但它不能与.NET 4客户端配置文件一起工作。

假设您不关心HTML中特殊的HTML编码字符,例如使用LINQ

string toDec(string input)
{
    Dictionary<string, char> resDec =
        (from p in input.ToCharArray() where p > 127 select p).Distinct().ToDictionary(
            p => String.Format(@"&#x{0:D};", (ushort)p));

    foreach (KeyValuePair<string, char> pair in resDec)
        input = input.Replace(pair.Value.ToString(), pair.Key);
    return input;
}

有,也没有。它对字符串进行编码,但不是我要找的文本格式。这是我尝试的第一件事。我也不使用网络工具。
string toDec(string input)
{
    Dictionary<string, char> resDec =
        (from p in input.ToCharArray() where p > 127 select p).Distinct().ToDictionary(
            p => String.Format(@"&#x{0:D};", (ushort)p));

    foreach (KeyValuePair<string, char> pair in resDec)
        input = input.Replace(pair.Value.ToString(), pair.Key);
    return input;
}