在Java中,如何将XML解析为字符串而不是文件?
我有以下代码:
DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(xmlFile);
如何让它解析字符串(而不是文件)中包含的 XML?
我有以下代码:
DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(xmlFile);
如何让它解析字符串(而不是文件)中包含的 XML?
我的代码库中有这个函数,这应该适用于你。
public static Document loadXMLFromString(String xml) throws Exception
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputSource is = new InputSource(new StringReader(xml));
return builder.parse(is);
}
另请参阅此类似问题
一种方法是使用采用 InputSource 而不是文件的解析版本
SAX 输入源可以从 Reader 对象构造。一个读取器对象是字符串读取器
所以像这样的东西
parse(new InputSource(new StringReader(myString))) may work.