longhorn008

 

HTML输出处理

public static string HtmlEncode(string content) //安全输出Html
  {
   content=content.Replace("'","''");
   content=content.Replace(">",">");
   content=content.Replace("<","&lt;");
   content=content.Replace(" ","&nbsp;&nbsp;");
   content=content.Replace("\"","&quot");
   content=content.Replace("\r\n","<br>");
   return content;  
  }
使用静态类,Namespace.Class.Htmlncode
输出安全考虑必须转换 '  <  >  " 4个
摘自CSDN
引用内容:
\r表示回车,\n表示换行,我们按回车按钮的时候,系统自动产生回车和换行两个字符:
回车仅仅是表示完成,把光标回到行首,
换行仅仅是换行,不表示完成,也不把光标放到行首。
示例:(下面用I表示光标)
1——
输出abcdef后:
abcdefI
2——
输出回车后:
Iabcdef
2——‘
如果是输出换行:
abcdef
      I
3——
输出回车和换行:
abcdef
I

你可用C语言来测试回车与换行的区别:假设当前光标的位置是5行10列,输出回车后,光标位置变为5行1列,如果输出的是换行则是6行10列,如果输出回车和换行则是6行1列。

如果你要想输出\r或\n这样的内容,你需要使用这样的方法:
Console.Write("\\r\\n");

Console.Write(@"\r\n");

输入回车后,产生的两个字符回车和换行,哪个在前哪个在后,我忘了,你可以检测。

关于str.Replace("\n","<br>"):
这里使用\r和\n都是一样的,因为肯定包含\r和\n,也或者系统把\r和\n等同了,你可以检测:在一个多行的TEXTBOX中,输入一些内容,其中包含回车,然后把\r和\n替换成比如“回车”和“换行”进行检测。
替换的目的你知道吧?就是在HTML中,不识别回车和换行,要换行的话需要通过<p>或<br>来实现。

posted on 2005-08-26 22:17  R9's Blog  阅读(1652)  评论(0编辑  收藏  举报

导航