如何将转换字符串写入文档对象

Posted

技术标签:

【中文标题】如何将转换字符串写入文档对象【英文标题】:How to write convert string to Document object 【发布时间】:2012-12-08 03:16:21 【问题描述】:

我有一个包含 xml 内容的字符串,如下所示:

String xml = "<item_list>" +
                "<category id='2' name='categoryName'>" +
                   "<item id='41' name='item1' />" +
                "</category>" +
             "</item_list>)";

我想将其转换为 Document 对象。这是我的代码:

Document doc = null;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
StringReader sr = new StringReader(xml);
InputSource is = new InputSource(sr);
doc = builder.parse(is);

当我运行它时,我得到下一个错误:

org.xml.sax.SAXParseException: Unexpected token (position:TEXT )@1:139 in java.io.InputStreamReader@40fa7860)

我做错了什么?

【问题讨论】:

【参考方案1】:

将您的 xml 字符串更改为:

String xml = "<?xml version='1.0' encoding='UTF-8'?>" +
                "<item_list>" +
                "<category id='2' name='categoryName'>" +
                   "<item id='41' name='item1' />" +
                "</category>" +
             "</item_list>";

目前您的字符串中缺少 xml 文档标题 &lt;?xml version='1.0' encoding='UTF-8'?&gt;

有关我们如何在 android 中创建 xml 文档的更多帮助,请参阅本教程:

http://xjaphx.wordpress.com/2011/10/27/android-xml-adventure-create-write-xml-data/

【讨论】:

【参考方案2】:

"&lt;/item_list&gt;)";

那个括号不应该在那里。

【讨论】:

以上是关于如何将转换字符串写入文档对象的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中,如何从字符串创建 TextReader 对象(不写入磁盘)

如何将 Writer 转换为字符串

如何将 PrintWriter 转换为字符串或写入文件?

如何将 ByteBuffer 转换为 pdf

Node.js - 如何将流转换为字符串

jackJson