# XML Datei Parsen



## micha2233 (2. Nov 2011)

Hallo Zusammen,

ich hab ne xml Datei die ich filtern und anschließend gefiltert speichern möchte. Ich hab ziemlich wenig Zeit um das zu realisieren, was würdet ihr mir vorschlagen um dieser Anforderung gerecht zu werden? Ein wenig java kann ich schon. 

Viele Grüße

Mcha


----------



## ARadauer (3. Nov 2011)

also ändern... ich würde dom nehmen: ließ dir einfach mal dieses kapitel durch: Galileo Computing :: Java ist auch eine Insel - 16 Einführung in die <XML>-Verarbeitung mit Java


----------



## micha2233 (3. Nov 2011)

Ich frag ich mal anders, ich habe mich in die Thematik zwar eingelesen, aber ich Frage jetzt ob ich aus der xml Struktur 

Struktur 1

[XML]
<COLLECTION><Release NAME="Release" TYPE="Unknown" STATUS="0"><Transaction><TransactionNumber>7</TransactionNumber><ReleaseNumber>8</ReleaseNumber><PrimaryObjectID>VR:wt.part.WTPart:53273:988398532-1300711276448-1114752444-36-1-168-192@w10.mtc-gmbh.local</PrimaryObjectID><CreatedBy>wtadmin</CreatedBy><CreatedDate>30.09.2011 16:37:22</CreatedDate><Locale>de</Locale><Destination>01</Destination></Transaction></Release><DeletedECN NAME="DeletedECN" TYPE="Unknown" STATUS="0">
</DeletedECN><AddedECN NAME="AddedECN" TYPE="Unknown" STATUS="0">
</AddedECN><ChangedECN NAME="ChangedECN" TYPE="Unknown" STATUS="0">
</ChangedECN><UnchangedECN NAME="UnchangedECN" TYPE="Unknown" STATUS="0">
</UnchangedECN><DeletedParts NAME="DeletedParts" TYPE="Unknown" STATUS="0">
</DeletedParts><AddedParts NAME="AddedParts" TYPE="Unknown" STATUS="0"><Part><ObjectID>VR:wt.part.WTPart:53271:988398532-1300711276448-1114752444-36-1-168-192@w10.mtc-gmbh.local</ObjectID><Class>com.ptc.windchill.esi.Part</Class><LastChangedBy>orgadmin</LastChangedBy><Number>0000000029</Number><StartEffectivity/><EndEffectivity/><StartSerialNumberEffectivity/><EndSerialNumberEffectivity/><StartLotNumberEffectivity/><EndLotNumberEffectivity/><SerialNumberEffectivityCxtPartNumber/><LotNumberEffectivityCxtPartNumber/><DefaultUnit>ea</DefaultUnit><Name>Part_B</Name><PartType>component</PartType><Source>make</Source><State>INWORK</State><IsPhantom>false</IsPhantom><Version>A</Version><Iteration>1</Iteration><PreviousVersion/><TargetID>01</TargetID></Part><Part><ObjectID>VR:wt.part.WTPart:53272:988398532-1300711276448-1114752444-36-1-168-192@w10.mtc-gmbh.local</ObjectID><Class>com.ptc.windchill.esi.Part</Class><LastChangedBy>orgadmin</LastChangedBy><Number>0000000032</Number><StartEffectivity/><EndEffectivity/><StartSerialNumberEffectivity/><EndSerialNumberEffectivity/><StartLotNumberEffectivity/><EndLotNumberEffectivity/><SerialNumberEffectivityCxtPartNumber/><LotNumberEffectivityCxtPartNumber/><DefaultUnit>ea</DefaultUnit><Name>Part_C</Name><PartType>component</PartType><Source>make</Source><State>INWORK</State><IsPhantom>false</IsPhantom><Version>A</Version><Iteration>1</Iteration><PreviousVersion/><TargetID>01</TargetID></Part><Part>
[/XML]

praktisch diese Struktur erzeuge

Struktur 2

[XML]
<Record>
    <Field name="such">Meier</Field>
    <Field name="name">Manfred Meier</Field>
    <SubRecord initField="edinfo">
      <Field name="bemerk">EDI-Daten für Manfred Meier</Field>
    </SubRecord>
  </Record>
  <Record>
    <Field name="such">Müller</Field>
    <Field name="name">Michael Müller</Field>
    <SubRecord initField="edinfo">
      <Field name="bemerk">EDI-Daten für Michael Müller</Field>
    </SubRecord>
  </Record>
[/XML]

Das ist jetzt nur ein Beispiel. Ich hab eine Strukturstückliste aus einem Programm X und soll Teile aus dieser Strukturliste nehmen und eine Strukturliste in einem anderem Programm via EDP erzeugen. Hat jemand schon mal gemacht? Brauche ich da ein xml Parser? Ich freue mich über eure Hilfe.

Viele Grüße

Micha


----------



## RySa (9. Nov 2011)

Das Beispiel ist grauenhaft (um nicht zu sagen s*****e)....das zweite (strukturierte) Beispiel, hat nicht mal die gleichen Elementnamen wie das erste. Da sehe ich überhaupt keine Zusammenhänge zwischen dem ersten xml-File und dem Zweiten. Ein besseres Beispiel wird doch eher helfen, dir die passende Antwort zu geben. Aber gundsätzlich ja, du brauchst einen Parser. Ob SAX oder JDOM ist dann eine Frage der Anforderungen und Performance.


----------



## timbeau (9. Nov 2011)

Das Beispiel 1 mal ordentlich zu formatieren würde schon helfen, soviel Arbeit darfs noch sein.


----------

