SUCHE MIT Google
Web virtualuniversity.ch
HOME DIDAKTIK ECDL ELEKTRONIK GUIDES HR MANAGEMENT MATHEMATIK SOFTWARE TELEKOM
DIENSTE
Anmeldung
Newsletter abonnieren
Sag's einem Freund!
VirtualUniversity als Startseite
Zu den Favoriten hinzufügen
Feedback Formular
e-Learning für Lehrer
Spenden
Autoren login
KURSE SUCHEN
Kurse veröffentlichen

Suche nach Datum:

Suche mit Schlüsselwort:

Suche nach Land:

Suche nach Kategorie:
PARTNER
ausbildung24.ch - Ausbildungsportal, Seminare, Kursen... 

 
HTMLopen.de - Alles was ein Webmaster braucht

 
PCopen.de - PC LAN Netze und Netzwerke - alles was ein IT Profi und Systemtechnicker braucht

SOFTWARE

4. Einfache Programmierbeispiele mit JDOM

3. JDOM-Programmierbeispiel:
XML einlesen, Element mit Attribut suchen, Attribut ergänzen,XML speichern

In einer XML-Datei wird ein bestimmtes Element gesucht,dessen Attribut einen bestimmten Wert hat. Diesem Elementwird ein neues Attribut hinzugefügt und das Ergebnis ineine neue XML-Datei gespeichert.

Im gleichen Verzeichnis, wo sich die oben gezeigteBeispiel-XML-Datei 'MyXmlFile.xml'befindet, speichern Sie den folgenden Java-Sourcecode unter dem Namen 'ExampleJdomAttr.java' und kompilieren und führen ihn aus mit:

javac -classpath .;jdom.jar ExampleJdomAttr.java
java -classpath .;jdom.jar ExampleJdomAttr MyXmlFile.xml NewXmlFile.xml Button size small col blue

Bezüglich des Kommandozeilenteils '-classpath .;jdom.jar' beachten Sie bitte die Hinweise unter 'JDOM-Voraussetzungen' und '1. JDOM-Programmierbeispiel'.

Falls Ihr Webbrowser die mit "java" beginnende Zeile auf zwei Zeilen umgebrochen hat: Bitte geben Sie diese als eine einzige Kommandozeile ein.

Die Kommandozeilenparameter haben folgende Bedeutung:

Parameter Beispiel Bedeutung
<XmlFile> MyXmlFile.xml Diese XML-Datei wird zu Beginn gelesen
<NewFile> NewXmlFile.xml In diese XML-Datei wird das Ergebnis geschrieben (falls die Suchbedingungen erfüllt werden)
<Elem> Button Es werden Elemente mit diesem Tag-Namen gesucht
<AttrS> size Das gesuchte Element muss ein Attribut mit diesem Namen haben
<ValS> small Das Attribut muss diesen Wert haben
<AttrNew> col Nur wenn die vorhergehenden Suchbedingungen erfüllt sind, wird ein neues Attribut mit diesem Namen hinzugefügt
<ValN> blue Das neue Attribut erhält diesen Wert

Mit der Beispiel-XML-Datei 'MyXmlFile.xml' und den angegebenen Beispielparametern wird das zweite <Button>-Element gefunden, da dessen size-Attribut den gesuchten Wert <ValS>="small" hat. Diesem <Button>-Element wird ein neues Attribut mit dem angegebenen Namen <AttrNew>=col und dem Wert <ValN>="blue" hinzugefügt. Das Ergebnis wird in die Datei 'NewXmlFile.xml' gespeichert.

                                       // ExampleJdomAttr.java
                                       
                                       import java.util.*;
                                       import java.io.*;
                                       import org.jdom.*;
                                       import org.jdom.input.*;
                                       import org.jdom.output.*;
                                       
                                       public class ExampleJdomAttr
                                       {
                                         public static void main( String[] args )
                                         {
                                           if( args.length != 7 )
                                           {
                                             System.err.println( "Attention:" );
                                             System.err.println( "jdom.jar must be added to classpath." );
                                             System.err.println( "Usage:" );
                                             System.err.println( "java ExampleJdomAttr <XmlFile> <NewFile>"
                                                                   + " <Elem> <AttrS> <ValS> <AttrNew> <ValN>" );
                                             System.err.println( "Example:" );
                                             System.err.println( "java -classpath .;jdom.jar ExampleJdomAttr"
                                                                   + " MyXmlFile.xml NewXmlFile.xml"
                                                                   + " Button size small col blue" );
                                             System.exit( 1 );
                                           }
                                           try {
                                             // ---- Read XML file ----
                                             SAXBuilder builder = new SAXBuilder();
                                             Document doc = builder.build( new File( args[0] ) );
                                             // ---- Modify XML data ----
                                             Element root = doc.getRootElement();
                                             List listMainElements = root.getChildren( args[2] );  // <MainElem>
                                             for( int i=0; i<listMainElements.size(); i++ )
                                             {
                                               // Find searched element with given attribute:
                                               Element elMain  = (Element)(listMainElements.get( i ));
                                               if( null == elMain )  continue;
                                               String s = elMain.getAttributeValue( args[3] );     // <AttrS>
                                               if( null == s || !s.equals( args[4] ) )  continue;  // <ValS>
                                               // Add new attribute to correct element:
                                               elMain.setAttribute( args[5], args[6] );            // <AttrNew>=<ValN>
                                               // ---- Write result ----
                                               XMLOutputter outp = new XMLOutputter();
                                               outp.setIndent( "  " );
                                               outp.setNewlines( true );
                                               // ---- Show the modified element on the screen ----
                                               System.out.println( "\nModified Element:\n" );
                                               outp.output( elMain, System.out );
                                               System.out.println();
                                               // ---- Write the complete result document to XML file ----
                                               outp.output( doc, new FileOutputStream( new File( args[1] ) ) );
                                               break;                                              // <NewFile>
                                             }
                                           } catch( Exception ex ) {
                                             ex.printStackTrace();
                                           }
                                         }
                                       }
                                       
 
DIPLOMARBEITEN UND BÜCHER

Diplomarbeiten zum Runterladen:

Suche im Katalog:
Architektur / Raumplanung
Betriebswirtschaft - Funktional
Erziehungswissenschaften
Geowissenschaften
Geschichtswissenschaften
Informatik
Kulturwissenschaften
Medien- und Kommunikationswissenschaften
Medizin
Psychologie
Physik
Rechtswissenschaft
Soziale Arbeit
Sozialwissenschaften


JOBS
HOME | E-LEARNING | SITEMAP | LOGIN AUTOREN | SUPPORT | FAQ | KONTAKT | IMPRESSUM
Virtual University in: Italiano - Français - English - Español
VirtualUniversity, WEB-SET Interactive GmbH, www.web-set.com, 6301 Zug

Partner:   Seminare7.de - PCopen.de - HTMLopen.de - WEB-SET.com - YesMMS.com - Ausbildung24.ch - Manager24.ch - Job und Karriere