Modifying Text by Cutting and Pasting

This Example describes a method to cut and paste the
Text in a DOM document. Methods which are used to cut and paste text in the DOM
Document are described below :-
Element root = doc.getDocumentElement():-direct access
to the root of the DOM document.
Element place = (Element) root.getFirstChild():-retrives
the first child of the root.
Text name = (Text) place.getFirstChild().getFirstChild():-creates
a text node and gets the sub child of the node named place.
Text directions = (Text)
place.getLastChild().getFirstChild():- makes a text node and access the sub
child of the node name place. name.getLength():-gets the length of the nodelist
name.
name.deleteData(offset, count):-This method deletes
data from a text node. Here offset specifies where to begin removing characters.
offset value starts with zero
directions.substringData(offset, count):-This method
retrives a substring of the full string from the specified range.
name.appendData(bridge):-adds a String to the end of
the text node.
Xml code for the program generated is:-
<?xml version="1.0"
encoding="UTF-8"?>
<Company>
<Location>
<Companyname>Roseindia .Net</Companyname>
<Employee>Girish Tewari</Employee>
</Location>
</Company> |
Cutting.java
/*
* @Program that Modify Text by Cutting and Pasting
* ModifyingText.java
* Author:-RoseIndia Team
* Date:-10-Jun-2008
*/
import java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
public class Cutting {
public static void main(String[] args) throws
Exception {
DocumentBuilderFactory
builderFactory = DocumentBuilderFactory.newInstance();
builderFactory.setValidating(false);
Document doc =
builderFactory.newDocumentBuilder().parse(new
File("Document4.xml"));
new Cutting().edit(doc);
}
public void edit(Document doc) {
int length;
int count;
int offset;
Element root =
doc.getDocumentElement();
Element place = (Element)
root.getFirstChild();
Text name = (Text)
place.getFirstChild().getFirstChild();
Text directions = (Text)
place.getLastChild().getFirstChild();
System.out.println("Name
before cutting is: " + name.getData());
System.out.println("Direction before cutting is: " +
directions.getData());
//for cutting data from name
length = name.getLength();
count = 4;
offset = length - 4;
name.deleteData(offset, count);
System.out.println("name
after cutting is: " + name.getData());
//for cutting data from
direction
length = directions.getLength();
count = 6;
offset = length - count;
String bridge =
directions.substringData(offset, count);
name.appendData(bridge);
System.out.println("name
after pasting is: " + name.getData());
}
} |
Output of the program:-
Name before cutting is: Roseindia .Net
Direction before cutting is: Girish Tewari
name after cutting is: Roseindia
name after pasting is: Roseindia Tewari |
Download
Source Code

|