I wanted to delete a line from xml file which i did it. But after deletion of that line there is a blank space. Again if i am adding another line by using java that blank line remains as usual.
My xml file is :::::::
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<config>
<employee id = "1" name = "aa" />
<employee id = "2" name = "bb" />
<employee id = "3" name = "cc" />
</config>
For deletion of a line say employee having id = 2 i wrote the following java code:::::
Expand|Select|Wrap|Line Numbers
- TransformerFactory transformerFactory = null;
- Transformer transformer = null;
- File file = new File("/src/java/config.xml");
- int employeeNodeLength = 0;
- int idValue = 0;
- try {
- Element employee_elem= null;
- DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance();
- DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder();
- Document document = documentBuilder.parse(new File("/src/java/config.xml"));
- NodeList list = document.getElementsByTagName("employee");
- employeeNodeLength = list.getLength();
- for( int i = 0; i < employeeNodeLength ; i++) {
- Node employeeNode= document.getElementsByTagName("employee").item(i);
- NamedNodeMap attributesList = employeeNode.getAttributes();
- Node employeeId = attributesList.getNamedItem("id");
- idValue = Integer.parseInt(employeeId.getTextContent());
- if(idValue == 2) {
- System.out.println("This "+employeeId.getTextContent()+" node is going to be deleted");
- employee_elem = (Element)document.getElementsByTagName("employee").item(i);
- // Remove the node
- employee_elem.getParentNode().removeChild(employee_elem);
- // Normalize the DOM tree to combine all adjacent nodes
- document.normalize();
- transformerFactory = TransformerFactory.newInstance();
- transformer = transformerFactory.newTransformer();
- transformer.setOutputProperty(OutputKeys.INDENT,"no");
- DOMSource source = new DOMSource(document);
- StreamResult result = new StreamResult(file);
- transformer.transform(source, result);
- break;
- }
- }
- } catch(Exception e) {
- e.printStackTrace();
- }
I want that after removing one line/lines there should not be any blank space, it should be properly aligned
Thanks in advance