最近定做安装程序,因为这次定做名字里有&符号,用微软的txt文本打开配置文件,在配置文件里修改了名称,名称在文本里显示正常,但是定做出来后,发现&符号变成了_下划线,在本来的&符号后面的字母下方多了个下划线。
我试了试,前后的字母离开一个空格,再定做了一次,发现还是显示成下划线,两个字母之间有个下划线出现。
之后,把所有名字都删除了,复制了多个&,然后定做了一个试试,发现前面显示了几个&符号,然后我又试验了两个&&符号,发现两个&&符号显示正常了,定做安装界面上显示一个&符号。
这个问题比较奇怪,上网搜索没有发现相关内容,一个“&”符号显示成了“_”下划线,两个&&就正常了,可以显示出一个&符号。
个人又测试了&&&###***@@@$$$这个字符串,结果是一个&,后面有三个#号,第一个#下有下划线,三个*号,三个@,三个$,也就是除了&需要两个来显示一个,其余的测试几个符号没有问题。
原因不明,如果出问题的时候,可以用两个字符符号试试。

如果是HTML输出一些特殊符号,可以用字符实体,把这些符号输出到浏览器中,最常用的就是空格的字符实体,浏览器总是会截短 HTML页面中的空格,如下面的图示,代码里少量空格和大量空格效果是一样的,如果要实际增加空格的个数,就需要用多个空格的字符实体。

常用的除了空格,还有大于和小于号,在html标签里,大于小于好代码标签的开始结束,之前更新历史记录的时候,用到过需要输出script标签。

测试代码:如图,是html中输出&,空格,和大于小于号的方法。如果在LODOP中,用add_print_text纯文本输出,则只需要用符号本身就可以了,所有纯文本输出的都会当作纯文本对待,不会通过浏览器解析。

这里 为了演示空格的存在,给空格加了背景色,但是实际在这写代码的时候,尽量不用给空格加span样式,在lodop解析等中可能会出一些问题,之前有博文介绍过。

<div id="d1">
&符号:实体名称&amp;amp; :<span style="background-color:#b0f4f5;"><font color="red">&amp;</font></span>;实体编号&amp;#38;:<span style="background-color:#b0f4f5;"><font color="red">&#38;</span></font><br>
空格符号:实体名称&amp;nbsp; :<span style="background-color:#b0f4f5;">&nbsp;</span>;实体编号&amp;#160;:<span style="background-color:#b0f4f5;"><font color="red">&#160;</span></font><br>
<span style="background-color:#b0f4f5;">&nbsp;</span><br>一个&amp;nbsp; 代码里无空格<br>
<span style="background-color:#b0f4f5;"> &nbsp; </span><br><br>一个&amp;nbsp; 代码里少量空格<br>
<span style="background-color:#b0f4f5;">&#160;</span><br><br>一个&amp;#160; 代码里无空格<br>
<span style="background-color:#b0f4f5;">           &#160;         </span><br><br>一个&amp;#160;代码里大量空格<br>
-----------------------------------<br>
小于大于符号:实体名称&amp;lt;&amp;gt; :<span style="background-color:#b0f4f5;">&lt;&gt;</span>;实体编号&amp;#60;&amp;#62;<span style="background-color:#b0f4f5;"><font color="red">&#60;&#62;</span></font><br>
--------------------例如------------------<br>
输出多个空格:空<span style="background-color:#b0f4f5;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><br>
输出html标签:<span style="background-color:#b0f4f5;">&lt;</span>script language="javascript" src="LodopFuncs.js"<span style="background-color:#b0f4f5;">&gt;</span></script><br>
</div>