Mega Code Archive

 
Categories / Java Tutorial / XML
 

Find Element And Set Or Create And Set

import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.NodeList; /*******************************************************************************  * Copyright (C) 2007 Google Inc.  *   * Licensed under the Apache License, Version 2.0 (the "License"); you may not  * use this file except in compliance with the License. You may obtain a copy of  * the License at  *   * http://www.apache.org/licenses/LICENSE-2.0  *   * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the  * License for the specific language governing permissions and limitations under  * the License.  ******************************************************************************/ /**  * Various XML utilities.  *   * @author simonjsmith, ksim  * @version 1.1 - ksim - March 6th, 2007 - Added functions regarding streaming  * @version 1.2 - ksim - March 10th, 2007 - Added functions regarding DOM  *          manipulation  */ public class Utils {   public static Element findElementAndSetElseCreateAndSet(Document document,       Element parent, String child, boolean value) {     return findElementAndSetElseCreateAndSet(document, parent, child, ""         + value);   }   public static Element findElementAndSetElseCreateAndSet(Document document,       Element parent, String child, float value) {     return findElementAndSetElseCreateAndSet(document, parent, child, ""         + value);   }   public static Element findElementAndSetElseCreateAndSet(Document document,       Element parent, String element, Date date) {     return findElementAndSetElseCreateAndSet(document, parent, element,         getDateString(date));   }   public static Element findElementAndSetElseCreateAndSet(Document document,       Element parent, String child, String value) {     NodeList nl = parent.getElementsByTagName(child);     if (nl.getLength() == 0) {       parent.appendChild(document.createElement(child));     }     Element ret = (Element) parent.getElementsByTagName(child).item(0);     if (ret.getFirstChild() != null) {       ret.removeChild(ret.getFirstChild());     }     ret.appendChild(document.createTextNode(value));     return ret;   } }