Which would be the preferred, or more efficient, way to read in a 40mb XML file? I remember reading (awhile ago) there were different methods of parsing XML, some more efficient than others depending on the need. The entire file would eventually need to be loading into an array, so I don't really need to search the file for a specific entry at random but simply all of them.

You don't want to keep that much data in memory...

Use a SAX parser for large amounts of data, as it doesn't need to retain the data in between operations.

You could also try XALAN from apache. Its an open source parser. Available in Java and C++

Xalan won't solve his problems...
For one it's not an XML parser and also it won't limit his memory use to something reasonable...

This article has been dead for over six months. Start a new discussion instead.