Java tutorial
//package com.java2s; /******************************************************************************* * I N T E L C O R P O R A T I O N * * Functional Group: Fabric Viewer Application * * File Name: XMLUtils.java * * Archive Source: $Source$ * * Archive Log: $Log$ * Archive Log: Revision 1.3 2015/08/17 18:49:02 jijunwan * Archive Log: PR 129983 - Need to change file header's copyright text to BSD license txt * Archive Log: - change backend files' headers * Archive Log: * Archive Log: Revision 1.2 2015/03/13 14:29:17 jijunwan * Archive Log: improved to have consistent xml format when we add, remove or replace an Application, Device Group, or Virtual Fabric node. * Archive Log: improved to add comments to indicate the change was made by FM GUI and also the time we change it * Archive Log: * Archive Log: Revision 1.1 2015/03/05 17:30:37 jijunwan * Archive Log: init version to support Application management * Archive Log: 1) read/write opafm.xml from/to host with backup file support * Archive Log: 2) Application parser * Archive Log: 3) Add/remove and update Application * Archive Log: 4) unique name, reference conflication check * Archive Log: * * Overview: * * @author: jijunwan * ******************************************************************************/ import java.util.Date; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.w3c.dom.NodeList; public class Main { /** * * <i>Description:</i> append a node into specified <code>parent</code> node * * @param doc * @param parent * @param node */ public static void appendNode(Document doc, Node parent, Node node) { Node txt = doc.createTextNode("\n "); parent.appendChild(txt); Node comment = doc.createComment(" Created by FM GUI @ " + (new Date()) + " "); parent.appendChild(comment); doc.adoptNode(node); parent.appendChild(node); formatNode(doc, parent, node); txt = doc.createTextNode("\n\n "); parent.appendChild(txt); } private static void formatNode(Document doc, Node parent, Node node) { Node txt = doc.createTextNode("\n "); parent.insertBefore(txt, node); NodeList children = node.getChildNodes(); for (int i = 0; i < children.getLength(); i++) { txt = doc.createTextNode("\n "); node.insertBefore(txt, children.item(i)); i += 1; } txt = doc.createTextNode("\n "); node.appendChild(txt); } }