我想解析一個使用Java的XML文件。如何使用Java解析大型XML文件?
XML文件大小隻有256 kb。我正在使用DOM解析器來解析XML文件。我如何解析大型XML文件內容?
下面是分析文件內容的方法:
public Document parse_a_string(StringBuffer decodedFile) {
Document doc1 = null;
try {
DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
DocumentBuilder db = factory.newDocumentBuilder();
InputSource inStream = new InputSource();
// problem here
inStream.setCharacterStream(new StringReader(decodedFile.toString()));
doc1 = db.parse(inStream);
} catch (Exception e) {
}
return doc1;
}
文件內容是在StringBuffer
參考對象,decodedFile
,但是當我將它設置爲StringReader
它僅接受字符串。
StringBuffer有一個toString()方法將其轉換爲String。在發佈這些問題之前先檢查JavaDoc – 2012-02-08 16:35:46
是的,但DecodedFile大小大於字符串大小。所以我們需要使用stringbuffer。但在StringReader中只接受字符串對象。我的問題是我們如何解析存在於stringbuffer中的大內容。 – Mohan 2012-02-08 16:41:27
解析它時是否收到任何錯誤,如OutOfMemory?這可能與更改Java內存設置一樣簡單。 – 2012-02-08 16:41:30