Datagridview无法解析某些符号

时间:2014-10-30 01:21:57

标签: c# datagridview symbols

我正在使用dataGridView1,它无法将正确的数据放置为:

=<3

并改变了它

=&lt;3 
我该怎么办? 我把webbrowser1中的数据放得像:

  

string htmlCode =&#34;&#34 ;;

HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
htmlCode = webBrowser1.DocumentText;
doc.LoadHtml(htmlCode);
dataGridView1.DataSource = "";
dt = new DataTable();
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Rank", typeof(string));
int count = 0;
foreach (HtmlNode table in doc.DocumentNode.SelectNodes("//table[not(@id='menutable')]"))
{
    foreach (HtmlNode row in table.SelectNodes("tr"))
    {
        {
            DataRow dr = dt.NewRow();

            foreach (var cell in row.SelectNodes("td"))
            {
                if ((count % 2 == 0))
                {
                    if (cell.InnerText != "Name")
                    {
                        dr["Name"] = cell.InnerText.Replace("&nbsp;", " ");
                    }
                }
                else
                {
                    if (cell.InnerText != "Title")
                    {
                        dr["Rank"] = cell.InnerText.Replace("&nbsp;", " ");
                        dt.Rows.Add(dr);
                    }
                }
                if (cell.InnerText != "Name" | cell.InnerText != "Title")
                    count++;
            }
        }
    }
    dataGridView1.DataSource = dt;
}

请帮助我,tnx

1 个答案:

答案 0 :(得分:1)

由于您不在Web应用程序中:

string decoded = System.Net.WebUtility.HtmlDecode(htmlEncoded);

在你的情况下

dr["ColumnName"]=System.Net.WebUtility.HtmlDecode(cell.InnerText);

你可以完全忘记String.Replace