헤르메스 LIFE

[Source] DOM4j Modify XMLDemo 본문

Core Java

[Source] DOM4j Modify XMLDemo

헤르메스의날개 2020. 12. 20. 05:04
728x90

출처 : http://www.tutorialspoint.com/java_xml/java_dom4j_modify_document.htm

 

 

package com.file .utils;

import java. io.File ;
import java. io.IOException ;
import java. io.UnsupportedEncodingException ;
import java. util.Iterator ;
import java. util.List ;

import org. dom4j.Document ;
import org. dom4j.DocumentException ;
import org. dom4j.Element ;
import org. dom4j.Node ;
import org. dom4j.io .OutputFormat;
import org. dom4j.io .SAXReader;
import org. dom4j.io .XMLWriter;


public class DOM4jModifyXMLDemo {
    public static void main( String[] args ) {
        try {
            File inputFile = new File("C:/dev/workspace/JavaDev/src/com/file/utils/xPathTest.xml" );
            SAXReader reader = new SAXReader ();
            Document document = reader.read (inputFile) ;
           
            Element classElement = document.getRootElement ();
           
            List nodes = document .selectNodes("/class/student[@rollno='493']" );
            for ( Node node : nodes) {
                Element element = (Element) node;
                Iterator iterator = element. elementIterator("marks") ;
                while ( iterator.hasNext ()) {
                    Element marksElement = (Element) iterator.next ();
                    marksElement.setText ("80") ;
                }
            }
           
            // Pretty print the document to System.out
            OutputFormat format = OutputFormat.createPrettyPrint() ;
            XMLWriter writer ;
            writer = new XMLWriter(System. out, format);
            writer.write (document) ;
        } catch (DocumentException e) {
            e.printStackTrace ();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace ();
        } catch (IOException e) {
            e.printStackTrace ();
        }
    }
}

 

결과

<?xml version="1.0" encoding="UTF-8"?>

 

<class>

  <student rollno="393">

    <firstname>dinkar</firstname> 

    <lastname>kad</lastname> 

    <nickname>dinkar</nickname> 

    <marks>85</marks>

  </student> 

  <student rollno="493">

    <firstname>Vaneet</firstname> 

    <lastname>Gupta</lastname> 

    <nickname>vinni</nickname> 

    <marks>80</marks>

  </student> 

  <student rollno="593">

    <firstname>jasvir</firstname> 

    <lastname>singh</lastname> 

    <nickname>jazz</nickname> 

    <marks>90</marks>

  </student>

</class>

 

dom4j-1.6.1.jar
0.30MB
DOM4jModifyXMLDemo.java
0.00MB
jaxen-1.1.4.jar
0.22MB
xPathTest.xml
0.00MB

728x90

'Core Java' 카테고리의 다른 글

[Source] XML 파싱  (0) 2020.12.20
[Source] Create Xml File Demo  (0) 2020.12.20
[Source] XPatharserDemo  (0) 2020.12.20
[HttpURLConnection] jsp 파일의 실행  (0) 2020.12.17
외부프로그램 실행시키기  (0) 2020.12.17