逃避XML中的特殊字符/符号?

时间:2014-02-21 14:52:27

标签: java xml set character

在我的数据库中使用表创建XML时,我得到了许多特殊字符,如注册商标,商标,学位,不同的标点符号等(这些字符以符号形式,十六进制,名称代码,数字代码存在)... 。其他一些词,比如,°,......

另外一些字符在我的XML中显示为x99,xEA等。

是否有一个库/ API可以在使用JAVA Code创建XML时处理所有这些问题。 我正在为我的XML使用“U​​TF-8”字符编码。

此外,我无法清理我的数据库以获得一致的数据,因为它是生产数据。

2 个答案:

答案 0 :(得分:0)

一个潜在的选择是将您的数据包含在CDATA标记中,这会将数据标记为可能包含标记的字符数据,但不应这样处理。

答案 1 :(得分:0)

有一个free command line tool用于将文本中包含特殊字符的文件转换为有效的XML。它还确保文件编码与声明中指定的匹配。

还有一个Java开发人员套件,允许您使用解析器来解析此类文件(称为XPL),作为XML的替代或XML的预处理。它使用类似StAX的过程,称为StAX-PL。