Hi,
ich bin völlig neu in Java und bin grad dabei aus einer XML-Datei die Attribut-Werte der Elemente auszulesen.
An und für sich ist das kein Problem. Die Werte werden ausgelesen und in folgender Form auf der Konsole ausgeben:
X1
X2
X3
X4
Y1
Y2
Y3
Y4
Alles schön und gut, aber ich hätte es gern in der Form:
X1 | Y1
X2 | Y2
X3 | Y3
X4 | Y4
usw... und genau da liegt das Problem
Mein Code sieht folgendermaßen aus:
Meldung in der Konsole:P0001 | Exception in thread "main" java.lang.NullPointerException
at XPathDemo.main(XPathDemo.java:25)
ich denke, dass Problem liegt sicherlich in der Laufvariable i. Ich hab aber keine Ahnung wie ich dem Programm verständlcih machen soll, dass es immer den Namen vom i. Patienten ausgeben soll...
Falls es jemand test möchte, hier noch kurz der XML-Code
[XML]<krankenhaus>
<patienten>
<patient ID= "P0001" name= "Hans Mueller" />
<patient ID= "P0002" name= "Kira Baum" />
<patient ID= "P0003" name= "Anne Nothaft"/>
<patient ID= "P0004" name= "Christian Graf" />
</patienten>
</krankenhaus>[/XML]
ICh sag schonmal vielen Dank für euere Hilfe
LG, Steffi
ich bin völlig neu in Java und bin grad dabei aus einer XML-Datei die Attribut-Werte der Elemente auszulesen.
An und für sich ist das kein Problem. Die Werte werden ausgelesen und in folgender Form auf der Konsole ausgeben:
X1
X2
X3
X4
Y1
Y2
Y3
Y4
Alles schön und gut, aber ich hätte es gern in der Form:
X1 | Y1
X2 | Y2
X3 | Y3
X4 | Y4
usw... und genau da liegt das Problem
Mein Code sieht folgendermaßen aus:
Java:
public class XPathDemo
{
public static void main( String[] args ) throws Exception
{
String filename = "Krankenhaus.xml";
Document doc = new SAXBuilder().build( filename );
int i=1;
List<?> id = XPath.selectNodes( doc, "/krankenhaus/patienten/patient/@ID" );
for ( Object object : id )
{
Attribute attribute = (Attribute) object;
System.out.print( attribute.getValue() + " | " );
Object name = XPath.selectSingleNode( doc, "/krankenhaus/patienten/patient[i]/@name" );
System.out.println( ((Attribute) name).getValue() );
i++;
}
}
}
Meldung in der Konsole:P0001 | Exception in thread "main" java.lang.NullPointerException
at XPathDemo.main(XPathDemo.java:25)
ich denke, dass Problem liegt sicherlich in der Laufvariable i. Ich hab aber keine Ahnung wie ich dem Programm verständlcih machen soll, dass es immer den Namen vom i. Patienten ausgeben soll...
Falls es jemand test möchte, hier noch kurz der XML-Code
[XML]<krankenhaus>
<patienten>
<patient ID= "P0001" name= "Hans Mueller" />
<patient ID= "P0002" name= "Kira Baum" />
<patient ID= "P0003" name= "Anne Nothaft"/>
<patient ID= "P0004" name= "Christian Graf" />
</patienten>
</krankenhaus>[/XML]
ICh sag schonmal vielen Dank für euere Hilfe
LG, Steffi