Hi,
ich versuche gerade eine 20mb große xml-Datei auszulesen. Dabei bekomme ich allerdings sobald die xml Datei größer als 6mb wird einen OutOfMemoryError. Ich nehme mal an, dass man bei Eclipse irgendwo auch einstellen kann, dass es mehr Speicher benutzt und so der Fehler wahrscheinlich nicht mehr auftritt.
Aber:
Ich will das Programm als jar auf verschiedenen Rechnern laufen lassen und wenn ich aus meinem Programm eine jar Datei mache und diese dann auf dem Rechner ausführe bleibt mein Programm hängen sobald die xml Datei größer als 6mb wird. Liegt das mit dem Speicher vielleicht daran, dass mein einlese-quellcode schrott ist?
Hier ist ein Teil des quellcodes bei dem der Fehler auftritt.
Ich würde mich freuen wenn jemand von euch eine Idee zu diesem Problem hat.
Vielen Dank im voraus
Gruß
Paladin
ich versuche gerade eine 20mb große xml-Datei auszulesen. Dabei bekomme ich allerdings sobald die xml Datei größer als 6mb wird einen OutOfMemoryError. Ich nehme mal an, dass man bei Eclipse irgendwo auch einstellen kann, dass es mehr Speicher benutzt und so der Fehler wahrscheinlich nicht mehr auftritt.
Aber:
Ich will das Programm als jar auf verschiedenen Rechnern laufen lassen und wenn ich aus meinem Programm eine jar Datei mache und diese dann auf dem Rechner ausführe bleibt mein Programm hängen sobald die xml Datei größer als 6mb wird. Liegt das mit dem Speicher vielleicht daran, dass mein einlese-quellcode schrott ist?
Hier ist ein Teil des quellcodes bei dem der Fehler auftritt.
Code:
class readXMLHeader implements Runnable {
public void run() {
SAXBuilder builder = new SAXBuilder();
Document doc=null;
String zeitraum="";
String datum="";
String typ="";
String nr="";
String nameuri = null;
try {
doc = builder.build(xmlpfad); <== Hier tritt der Fehler auf
} catch (JDOMException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Element root = doc.getRootElement();
nameuri = root.getNamespaceURI();
Ich würde mich freuen wenn jemand von euch eine Idee zu diesem Problem hat.
Vielen Dank im voraus
Gruß
Paladin