使用C#中的System.Web.HttpUtility.HtmlEncode在网站上写一个新行

时间:2011-08-04 15:31:39

标签: c# printing web

我正在尝试使用C#中的System.Web.HttpUtility.HtmlEncode函数将一些文本写入网站。我给函数的字符串参数中有一些Environment.Newline,但它们没有写在网站上。有谁知道这是为什么以及如何解决它。提前谢谢。

2 个答案:

答案 0 :(得分:4)

换行符被写为物理换行符,所以你必须要包装一个pre:

response.Write("<pre>" + HttpUtility.HtmlEncode(str) + "</pre>");

或者在你有HtmlEncoded之后用BR替换新行(或者它也会对BR进行编码):

response.Write(HttpUtility.HtmlEncode(str).Replace("\n", "<br />"));

答案 1 :(得分:1)

鉴于其HTML NewLine字符不显示为空格。尝试使用<br/>元素替换新的换行符。