如何使用Java解析大型XML文件?

Moh*_*han 0 java xml parsing dom

我试图使用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;
}
Run Code Online (Sandbox Code Playgroud)

文件内容位于StringBuffer引用对象中decodedFile,但是当我将其设置为StringReader它时,只接受字符串.

hel*_*hod 5

对于大型文档(虽然我不会称之为大文档)我会使用StAX.