javax StreamSource的用途是什么
我正在解析一个作为InputStream读入的xml文档,我在javax.xml.transform.stream.StreamSource中看到了第一个阶段。当我可以解析读入的流时,为什么要这样做?JavaAPI没有帮助:“充当XML标记流形式的转换源的持有者。” StreamSource的示例:javax StreamSource的用途是什么,java,xml,Java,Xml,我正在解析一个作为InputStream读入的xml文档,我在javax.xml.transform.stream.StreamSource中看到了第一个阶段。当我可以解析读入的流时,为什么要这样做?JavaAPI没有帮助:“充当XML标记流形式的转换源的持有者。” StreamSource的示例: XMLInputFactory xif = XMLInputFactory.newFactory(); StreamSource reportStream =
XMLInputFactory xif = XMLInputFactory.newFactory();
StreamSource reportStream =
new StreamSource(new URL("file:///myXmlDocURL.xml").openStream());
XMLStreamReader xmlReader = xif.createXMLStreamReader(reportStream);
xmlReader.nextTag();
while (xmlReader.hasNext()) {
if (xmlReader.getLocalName().equals("attributeICareAbout")) {
String tempTagValue = xmlReader.getText();
xmlReader.nextTag();
}
}
xmlReader.close();
没有StreamSource的示例:
XMLInputFactory xif = XMLInputFactory.newFactory();
XMLStreamReader xmlReader =
xif.createXMLStreamReader(new URL("file:///myXmlDocURL.xml").openStream());
xmlReader.nextTag();
while (xmlReader.hasNext()) {
if (xmlReader.getLocalName().equals("attributeIcareAbout")) {
String tempTagValue = xmlReader.getText();
xmlReader.nextTag();
}
}
xmlReader.close();
它是一种抽象,因此相同的解析代码可以用于各种源代码(注意:
StreamSource
implementsSource
):
DOMSource
)、SAX(SAXSource
)、StAX(StAXSource
)和JAXB(JAXBSource
)也有Source
的实现