当前位置:  开发笔记 > 编程语言 > 正文

处理UTF-8编码

如何解决《处理UTF-8编码》经验,为你挑选了1个好方法。

我们有一个在Weblogic服务器上运行的Java应用程序,它从JMS或MQ队列中获取XML消息并将其写入另一个JMS队列.应用程序不以任何方式修改XML内容.我们使用BEA的XMLObject来读取和写入队列中的消息.

XML消息包含UTF-8的编码类型声明.

当XML包含超出正常ASCII范围的字符时(例如£符号),我们遇到了问题.当从队列中读取消息时,我们可以看到£符号是完整的,但是一旦我们将它写入目标队列,£符号就会丢失并被替换为£.

我检查了操作系统级别设置(区域设置),一切似乎都没问题.我还应该检查什么以确保不会发生这种情况?



1> Alan Moore..:

一旦我们将它写入目标队列,£符号就会丢失,而是替换为£

这告诉我字符被为UTF-8,但它被读取就好像它是像ISO-8859-1这样的单字节编码.(对于U + 00A0..U + 00BF范围内的任何字符,如果将其编码为UTF-8并将其解码为ISO-8859-1,则最终得到两个字符的序列ÃX,其中X是原始字符. )我将查看接收JMS队列的编码设置.

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有