2010-01-02 72 views
0

我創建了一個從url地址讀取xml文檔的應用程序。最近的邏輯被修改,現在而不是接收的XML文檔的URL地址我接收文檔內容本身,所以我必須修改以下方法:如何將XML文檔傳遞給XMLReader?

public List<Product> getProducts(String content){ 
    List<Product> products = new ArrayList<Product>(); 
    XMLReader xr; 
    try { 
     xr = sp.getXMLReader(); 
     ProductsXMLHandler productsXmlHandler = new ProductsXMLHandler(); 
     xr.setContentHandler(productsXmlHandler); 
     xr.parse(content); 

     products = productsXmlHandler.getProducts(); 
    } catch (SAXException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    return products; 
} 

}

如所提到的可變字符串內容不是一個url,而是一個XML文檔,所以我必須將這些內容傳遞給XMLReader。

目前該行xr.parse(content);

不正確的值「內容」是不是一個URL工作了。

有誰知道該如何修改方法來解析XML內容,而不是試圖解析給定的網址內容?

謝謝!

回答

3

的情況下,它是org.xml.sax.XMLReader

InputSource is = new InputSource(new StringReader(content)); 
xr.parse(is); 
相關問題