cjk编码转换

编辑
文档创建者:文档助手1 (67727 )     浏览次数:6333次     编辑次数:8次     最近更新:jiangsr 于 2018-08-21     

目录:

1. 描述编辑

由前面编码章节,我们知道了有很多种编码方式,比如GBK,UTF-8等等。
从乱码章节,我们知道如果客户端编码方式与服务器端编码方式不同,就会出现乱码。
要解决乱码问题,要么修改客户端编码,要么修改服务器编码,但是用户集成至自己的系统后,客户页面编码一般不能修改,即使修改了,下次如果需要变动还要修改。

2. 解决方案编辑

如果客户端-报表服务器之间的交互都是用FR内置的cjk编码,就不需要考虑页面编码和服务器编码的问题了。
2.1 原理
cjk编码转换jS代码如下:
function cjkEncode(text) { if (text == null) { return ""; } var newText = ""; for (var i = 0; i < text.length; i++) { var code = text.charCodeAt (i); if (code >= 128 || code == 91 || code == 93) {//91 is "[", 93 is "]". newText += "[" + code.toString(16) + "]"; } else { newText += text.charAt(i); } } return newText; }
cjkEncode方法在FineReport的JS库中已经预先提供了,用户只要加载了FR的JS库,就可以使用FR.cjkEncode对中日韩文字符进行encode.
2.2 示例
客户端-->报表服务器:参见web传递中文参数

报表服务器-->客户端:参见超级链接到网页传递的中文乱码

附件列表


主题: 专题总结
如果您认为本文档还有待完善,请编辑

文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

此页面有帮助吗? [ 去社区提问 ]