从显示的文本中删除html特殊字符

时间:2012-06-22 05:48:14

标签: c# string html-entities

我让Xml女巫转换为纯文本,然后在网络浏览器中以html格式显示。

在每一行的末尾出现符号¶我想删除符号或用a替换它。

有谁知道我怎么能这样做?

这就是我将XML转换为纯文本的方式:

XmlDocument doc = new XmlDocument();
                        doc.LoadXml(this.dataGridViewResult.SelectedRows[0].Cells["XMLEvent"].Value.ToString());

StringBuilder sb = new StringBuilder();
foreach (XmlNode node in doc.DocumentElement.ChildNodes)
{
  sb.Append(char.ToUpper(node.Name[0]));
  sb.Append(node.Name.Substring(1));
  sb.Append(' ');
  sb.AppendLine(node.InnerText);
}

4 个答案:

答案 0 :(得分:2)

'¶'出现在哪里?是在编辑器中打开转换后的文本文件时吗?

通常,该符号用于在文本编辑器中可视化行尾,而它实际上并不是文本的一部分。在许多情况下,您可以在文本编辑器中选择显示/隐藏行结束标记。

但是,如果您感兴趣的输出是HTML,则该字符不应出现在此处。

答案 1 :(得分:1)

试试这个:

sb.AppendLine(node.InnerText.TrimEnd('¶'));

sb.AppendLine(node.InnerText.Replace("¶","."));

答案 2 :(得分:0)

foreach循环后,尝试:

sb.Replace("¶", ".");

答案 3 :(得分:0)

特别是在你的情况下(假设它总是在行的末尾),我会使用:

sb.AppendLine(node.InnerText.Replace('\u00b6', '.'));

如果你想保持代码unicode免费。