响应.将打印文本从数据库写入为HTML
本文关键字:HTML 数据库 打印 文本 响应 | 更新日期: 2023-09-27 18:03:02
我将文本区域中的文本存储到数据库中。该文本可以包含新行、特殊字符等。但是我想确保当我用响应显示它时。写出来,它就像要在textarea控件中显示一样。我这样做的原因是我想给用户一个打印视图表单。下面的解决方案不起作用。使用ASP。NET/C #
e。g
foreach (DataRow row in dview.Table.Rows)
{
Response.Write("<tr>");
Response.Write(String.Format("<td>{0}<br/><br/></td>", row[1].ToString().Replace("'n", "<br/>")));
Response.Write("</tr>");
谢谢
不要使用"'n
";始终使用Environment.NewLine
,而不是:
foreach (DataRow row in dview.Table.Rows)
{
Response.Write("<tr>");
Response.Write(String.Format("<td>{0}<br/><br/></td>", row[1].ToString().Replace(Environment.NewLine, "<br/>")));
Response.Write("</tr>");
}
不要那样做,你会遇到问题的,特别是当引号和符号涉及到。
像这样存储数据:
HttpUtility.HtmlEncode("<p>Lorem ipsum ...</p>"); //your HTML to encode goes here
并像这样检索它:
myPlaceHolder.Text = HttpUtility.HTMLDecode(myData);
关于htmlcode/Decode的更多信息
您可以在<pre></pre>
块中显示输出,该块将保留所有空白,包括多个空格,换行符等。
HTML编码,这样数据中的任何尖括号都不会破坏输出HTML。