我将一个文件压缩加密后的数据(基本上是乱码),输出到最终的文件中。把数据放在元素中。 <Data> ....... </Data> ,本来最终文件直接用FileOutputStream写出来的,但是最后解密的时候读数据不方便。所以打算用dom搞成xml文件。
用dom倒是生成了xml,就是读的时候提示: Malformed UTF-8 char -- is an XML encoding declaration missing?”(行号可能太小)。
后来换jdom,靠,连写xml文件都写不出来了:
Data=new Element( "Data ");
Data.setText(Content); content是加密后有乱码得到的string。
说 is not legal for a JDOM character content: 0x1a is not a legal XML character.
各种编码都试过了,就是搞不定。
------解决方案--------------------
试下加上 <![CDATA ...]>
------解决方案--------------------
utf-8编码的文件里,不能出现汉字,否则会报错。
------解决方案--------------------
建议LZ还是先看看XML文件是否符合XML规范吧~~你格式都不对的话(比如定义头上多空格等)肯定解析不出
------解决方案--------------------
关注一下。。。
------解决方案--------------------
你最好把“文件压缩加密后的数据(基本上是乱码)”做HEX或者BASE64编码,然后再放到 <data> </data> 中