报表知识库
我要提问

特殊符号的处理

在实际项目开发过程中,当我们要用到一些特殊符号,如®时,总会遇到一些问题。下面列出一些常见的问题,并给出相应的解决办法。

问题1:

如果在HTML页面中要显示特殊符号®,由于®不能直接输入,此时需要用转义字符串®来代替输入此特殊符号。但在不同的页面编码中,使用方法的不同会造成乱码显示。

解决办法:

  • 如果页面编码为UTF-8,可以直接复制输入®或输入转义字符串® ,

效果演示:

在编码为UTF-8的HTML源文件中,输入® =®,则显示为,

1.png

  • 如果页面编码为GBK,一般用®代替输入该特殊字符。如果直接复制输入®,则会显示乱码。

效果演示:

页面编码改为GBK,输入® =®,如图,左边直接输入®不能正常显示,右边的替代则可。

2.png

问题2:

要在设计器报表中显示特殊符号®,在3.55版本中会显示乱码,在4.0及以上版本中调用润乾函数则可以正常显示此值。

解决办法:

  • ®的ASCII值为174,单元格中调用润乾函数char(174),即可正常显示该特殊字符。

效果演示:

在A2单元格输入调用函数,

555.png

点击预览后,就可以看到正确显示该特殊符号,

666.png

  • 要想在服务器上显示该特殊符号®,则页面编码应采用UTF-8,否则会出现乱码。

效果显示:

当在jsp中把页面编码改为其他,如GBK,显示效果如下,不能正常显示,

未命名.PNG

当页面编码采用UTF-8,显示效果如下,能正常显示该特殊字符,

222.PNG

问题3:

数据库字段中含有特殊符号®,要取出来在报表中显示的情况:

数据库编码为UTF-8时,可以直接存储特殊符号®,直接取出使用。

数据库编码为GBK等其他形式时,则需要存储为®字符串。

解决办法:

  • 数据库字段中有这类特殊符号的,不论用哪种编码方式,都可以用页面中的符号®来代替。
  • 还可以用润乾提供的函数(rplc)统一替换(适用于4.0版)。
  • 也可以编写自定义函数批量替换,但会有些性能损失。

问题4:

报表单元格中我们需要的效果是直接显示®,但是若按照原字段格式显示,即直接输入®后,预览仍显示®而不是需要的特殊字符。

解决办法:

设计器中右键该单元格,单击数据类型选项,选择数据类型为HTML,这时直接输入®,就能得到预期的结果。

效果演示:

原字段格式显示时,直接输入®,发布后结果如下,A2格仍直接显示®字符串。

7.png

把单元格数据类型改为HTML后,特殊符号®能正常显示。

6.png