dynamisch Lesen xml-element und den Wert in java
Ich versuche, die XML Lesen(was auch immer, ich weiß es nicht, es ist Struktur, bcz ich lese flie vom server.), und ich suchte eine Menge über SO. aber nicht gefunden, was hilfreich ist.
1> ich will zum abrufen des XML-node-name, beginnend von der Wurzel zum Ende der Datei, Kind oder Kind des Kindes, bis es keine Kinder oder Geschwister übrig.
2> in ähnliche Frage, ich fand, dass Sie verwenden tagname abrufen Wert des Tags, so möchte ich weitergeben, dass node-Namen in diesem Wert zu erhalten...
ist es möglich dynamisch. oder Folgen derselben Struktur wie im vorherigen Fragen wie statisch hinzufügen tagname abrufen Wert.
nachdem ich diese in java, ich möchte zu erstellen ausführbare jar-Datei und es verwenden möchten, in der Lustigkeit.
BEARBEITEN
ich möchte zum element suchen und es ist Wert, wie, dass, im ersten Zustand bin ich Schleife meine arraylist, welche ich mit dem Namen masterheader
enthalten, die alle tag-Namen, und in der zweiten Schleife ich finde node name von xml und und innen, die beiden for-Schleife habe ich eine Bedingung, wenn beide übereinstimmen, dann ist es Knoten Namen und speichern Sie einen Wert in getrennt form, da möchte ich es konvertieren in csv
.
hier, masterheader und childheader ist arraylist
. masterheader enthalten alle header standardmäßig. und wir gonna hinzufügen nodename in childheader
, nd wenn beides übereinstimmt, dann fügen wir dem Wert im Ergebnis-string.
für z.B. masterheader = [employeename, employeesurname, fathername, mobile, salary]
und in childheader = [employeename, mobile, salary]
//dieses basiert auf xml-parsing.
for(i=0;i<masterheader.size();i++)
{
for(j=0;j<childheader.size();j++)
{
if((masterheader[i]).equals(childheader[j]))
{
//get the value of that node, + ","
}
else
{
count++
}
}
if(count==childheader.size()){
//add into result string +null+","
}
}
- Könnte, fügen Sie ein xml-Beispiel und erklären Sie, wie die xml-anders wäre für andere "dynamische tagnames"??? (oder sind Sie extrahieren eine Teilmenge der Informationen in der xml???)
Du musst angemeldet sein, um einen Kommentar abzugeben.
ich denke, das wird helfen,
<starttag>
, aber zu der Zeit abrufen zu können, Werten Sie die Werte für Eltern-tag zu sein 🙁 , die drucken alle untergeordneten Werte als Wert des übergeordneten Elements. netter Versuch, aber ich will etwas besseres.Könnten Sie einen StAX-parser für diesen Zweck.
XML-Beispiel
employees.xml
Java-code
Beachten Sie, dass Sie ganz einfach ändern Sie die
START_ELEMENT
Fall zu vergleichen mit den tag-Namen einen Wert. (Wahrscheinlich könnten Sie ignorieren alle anderen Fälle, wenn Sie nur wollen, überprüfen Sie diese Elemente.)- Ausgang
try{(InputStream stream = new FileInputStream("employees.xml")) {}
Linie, sagen, dasschange project compliance and jdk to 1.7
.InputStream stream = ...; try { ...use stream... } finally { stream.close();}
statt...throws XMLStreamException, FileNotFoundException, IOException
im main-Methode, es funktioniert jetzt, aber es ist eine Verwirrung. ich werde die Frage Bearbeiten.