将字符串解析为文档对象

时间:2017-03-10 12:42:00

标签: java xml

我尝试从字符串中对文档对象进行bild并将其附加到元素中,但我在此行中获得异常 java.io.FileNotFoundException:project folder path \ org.xml.sax.InputSource :{{ 1}}。

我的代码如下所示:

Document constantDocument = docBuilder.parse(
String.valueOf(new InputSource( new StringReader( xmlAsString ) )));

我错过了什么?

2 个答案:

答案 0 :(得分:0)

原因在Documentation

中给出
  

public Document parse(String uri)                  抛出SAXException,                         IOException的

     

将给定URI的内容解析为XML文档并返回新内容   DOM Document对象。如果URI,则抛出IllegalArgumentException   为null null。

您正在提供一个String,并且Java正在寻找以给定的String / URI获取文件,因此异常......

根据您的尝试,您可以使用的最接近的是:

  

解析(InputSource is)

     

将给定输入源的内容解析为   XML文档并返回一个新的DOM Document对象。

因此,将.parse更改为以下内容可以解决您的问题:

Document constantDocument = docBuilder.parse(new InputSource(new StringReader(xmlAsString)));

答案 1 :(得分:0)

找到我要找的东西:

DocumentBuilder db = DocumentBuilderFactory.newInstance().newDocumentBuilder();
InputSource is = new InputSource();
is.setCharacterStream(new StringReader("<root><nod1></node1></root>"));

Document doc = db.parse(is);
相关问题