2013-08-30 19 views
9

我正在解析一個正在讀入的InputStream中的xml文檔,並且我看到一個example我在javax.xml.transform.stream.StreamSource中首先看到了這個流。爲什麼當我可以在讀取流時解析流? Java API的description沒有幫助:「以XML標記流的形式表現爲轉換源的持有者。」javax StreamSource的用途是什麼

實施例與StreamSource的:

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(); 

回答