现在有一个XML文件,我知道里面有非法字符,就是除了正常的元素外,内容中可能包括了&和<,>这样的非法字符。
请问我如何将这些字符转译???有没有简单一点的方法。
我暂时知道用jdom,把element一个一个的遍历下去,找到不是element的直接替换里面的非法字符。除了这样的方法,请问还有没有更便捷的方法???
最好,除了用JAVA自带的API和JDOM以外,最好别再导入其他的外部jar包。
请各位老师赐教XMLJavajdom

解决方案 »

  1.   

    如果有非法字符,用解析xml的类是解析不出来的,会报错。
      

  2.   

    如果xml解析不行的话,使用直接读文本的方式。
    至于判断这些特殊字符,可以使用ASCII码的方式。
      

  3.   

    个人认为,先用io读文件,去除element中的信息,然后过滤掉非法字符。
      

  4.   

    SAX + 回调解析的方式,高效有安全。
    实现方式:
    一部分一部分先解析,然后遇到特殊字符,直接回调上层封装的一个函数(该函数要么做字符编码要么做非法字符解析等),然后继续往下执行,最后获取新的xml。其实还有一种方式把xml读取为byte,然后查看特殊非法字符的编码,然后特殊处理,就可以了!
      

  5.   

    简单的可以用正则表达式,复杂的就麻烦了。5楼老师提到的SAX,也是很多其他老师让我用的。可是这个不太熟。还要去学这个。