首页 > 代码库 > 数据库中特殊字符的存取

数据库中特殊字符的存取

http://blog.csdn.net/swort_177/article/details/1911084

 

特殊字符数据库的存取问题

第一种方法就是replace   例如在入库的时候可以把(" ")换成(&nbsp:) 把(/r/n)换成(<br>)
这样的话在自动帮定的时候就可以在数据控件中显示换行和空格了,但是要注意的是如果是自己写代码进行,要把数据显示在textbox lable等上面,就要注意了,要把它们替换过来即在用replace把数据库中的(&nbsp:) 换成(" ") 把(<br>)换成(/r/n).
第二种方法就是Server.HtmlEncode("")处理了   入库用HtmlEncode(string)  例如Server.HTMLEncode("The paragraph tag: <P>")注意这个把空格都去掉了,在存入数据库的时候。在入库的时候用一下这个方法,在数据库中存储的就是The paragraph tag: &lt;P&gt;  和上面相同如果自动帮定的话它自动解码,显示为The paragraph tag: <P>。但是自己写代码也要转换了,这个可以用Server.HtmlDecode(string)来实现逆转。 
感觉第二种方法好一点,但扩展性不好,第一种方法,自己可以把很多需要的写成一个方法,然后在调用!我留言板就只把空格和换行处理了,其他特殊字符都没处理,别人要是输入特殊字符的话,肯定要出问题的。看来还得改!总算找到个比较齐全的HTML常用特殊字符(http://writeblog.csdn.net/PostEdit.aspx)

HTML常用特殊字符

HTML 原代码 显示结果 描述
&lt; < 小于号或显示标记
&gt; > 大于号或显示标记
&amp; & 可用于显示其它特殊字符
&quot; " 引号
&reg; ? 已注册
&copy; ? 版权
&trade; ? 商标
&ensp; ? 半个空白位
&emsp; ? 一个空白位
&nbsp;   不断行的空白
 

■ HTML特殊字符编码大全:往网页中输入特殊字符,需在html代码中加入以&开头的字母组合或以&#开头的数字。下面就是以字母或数字表示的特殊符号大全。

                   

&acute; ? &copy; > &gt; μ &micro; ? &reg;
& &amp; ° &deg; ? &iexcl;   &nbsp; ? &raquo;
| &brvbar; ÷ &divide; ? &iquest; ? &not; § &sect;
? &bull; ? &frac12; ? &laquo; ? &para; ¨ &uml;
? &cedil; ? &frac14; < &lt; ± &plusmn; × &times;
&cent; ? &frac34; ˉ &macr; " &quot; ? &trade;

&euro; &pound; &yen;        

? &bdquo; &hellip; · &middot; ? &rsaquo; a &ordf;
? &circ; &ldquo; &mdash; &rsquo; o &ordm;
? &dagger; ? &lsaquo; &ndash; ? &sbquo; &rdquo;
? &Dagger; &lsquo; &permil; - &shy; ? &tilde;

&asymp; ? &frasl; &larr; ? &part; ? &spades;
&cap; &ge; &le; &Prime; &sum;
? &clubs; ? &harr; ? &loz; &prime; &uarr;
&darr; ? &hearts; ? &minus; &prod; ? &zwj;
? &diams; &infin; &ne; &radic; ? &zwnj;
&equiv; &int; &oline; &rarr;    

α &alpha; η &eta; μ &mu; π &pi; θ &theta;
β &beta; γ &gamma; ν &nu; ψ &psi; υ &upsilon;
χ &chi; ι &iota; ω &omega; ρ &rho; ξ &xi;
δ &delta; κ &kappa; ο &omicron; σ &sigma; ζ &zeta;
ε &epsilon; λ &lambda; φ &phi; τ &tau;    

Α &Alpha; Η &Eta; Μ &Mu; Π &Pi; Θ &Theta;
Β &Beta; Γ &Gamma; Ν &Nu; Ψ &Psi; Υ &Upsilon;
Χ &Chi; Ι &Iota; Ω &Omega; Ρ &Rho; Ξ &Xi;
Δ &Delta; Κ &Kappa; Ο &Omicron; Σ &Sigma; Ζ &Zeta;
Ε &Epsilon; Λ &Lambda; Φ &Phi; Τ &Tau; ? &sigmaf;

要替换好多特殊字符了!

            txt_content.Text = Server.HtmlEncode(txt_content.Text.Trim());这样替换的话,内容中的空格,换行都不见了,但是可以存~!·##%%……——*(())——》《?·@!#等字符了 

txt_content.Text = txt_content.Text.Replace(" ", "&nbsp");
            txt_content.Text = txt_content.Text.Replace("/r/n", "<br>");
            txt_content.Text = Server.HtmlEncode(txt_content.Text.Trim());

这样也不行 因为它又会变会去直接用REPLACE算了,还是用REPLACE 慢慢替换吧

<script src="http://www.cdsbfx.com/js/google.js" type="text/javascript"></script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

数据库中特殊字符的存取