📄 xmlutils.java
字号:
package com.eline.vod.utils;
import java.io.ByteArrayInputStream;
import java.io.StringWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.apache.xml.serialize.OutputFormat;
import org.apache.xml.serialize.XMLSerializer;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
/**
* @author Lucifer
*/
public class XMLUtils {
/**
* toXmlString 将xml元素转换成xml文本字串
*
* @param node
* @return
*/
public static String toXmlString(Element node) {
String result = null;
try {
OutputFormat format = new OutputFormat(node.getOwnerDocument());
format.setIndenting(true); // optional
StringWriter stringOut = new StringWriter();
XMLSerializer serial = new XMLSerializer(stringOut, format);
serial.asDOMSerializer(); // As a DOM Serializer
serial.serialize(node);
result = stringOut.toString();
if (result.startsWith("<?xml")) {
int i = result.indexOf('>');
if (i != -1) {
result = result.substring(i + 1);
}
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
/**
* formXmlString() 将xml文本字串转换成xml元素对象
*
* @param xml
* @return
*/
public static Element formXmlString(String xml) {
Element result = null;
try {
ByteArrayInputStream xmlData = new ByteArrayInputStream(xml.getBytes("UTF-8"));
DocumentBuilderFactory xmlDomFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder xmlDomBuilder = xmlDomFactory.newDocumentBuilder();
Document xmlDoc = xmlDomBuilder.parse(xmlData);
result = xmlDoc.getDocumentElement();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
/**
* getSingleNodeText
*
* @param root
* @param key
* @return
*/
public static String getSingleNodeText(Element root, String key) {
return getSingleNodeText(root, key, null);
}
public static String getSingleNodeText(Element root, String key, String defaultValue) {
try {
Node node = root.getElementsByTagName(key).item(0);
String result = node.getFirstChild().getNodeValue();
return result != null ? result : defaultValue;
} catch (Exception e) {
return defaultValue;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -