Tha*_*e90 2 java xml android dom
我的情况:我有一个接受字节数组的方法.有问题的数组使用UTF-8编码,最初是XML消息.我希望能够使用DOM解析器重新构造此消息.我知道我可以通过使用a从字节数组创建一个Document ByteBuffer.唯一的问题是,如果我将它直接放在传递的字节数组上,它将创建一个损坏的文档(如果可能的话).这是因为该数组是编码的XML消息,以UTF-8编码.但是,当我通过使用decode()方法解码数组时,我得到一个CharBuffer返回:
ByteBuffer encodedData = ByteBuffer.wrap(data);
CharBuffer decodedData = Charset.forName("UTF-8").decode(encodedData);
Run Code Online (Sandbox Code Playgroud)
我不知道如何从这个构造Document,因为在DocumentBuilder中没有定义将接受CharBuffer的parse()方法....
任何人都可以帮我这个吗?
DocumentBuilder有一个parse(InputStream is)方法,您可以通过传入ByteArrayInputStream从您的字节创建的文件来创建您的文档.
Document doc = DocumentBuilder.parse(new ByteArrayInputStream(data));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4678 次 |
| 最近记录: |