- 浏览: 76010 次
- 性别:
- 来自: 广州
文章分类
最新评论
import java.io.ByteArrayInputStream; import java.io.StringWriter; import java.util.HashMap; 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.NamedNodeMap; import org.w3c.dom.NodeList; public class XmlHelper { static public String EncodeXML(String sString) { sString = util.ReplaceText(sString, "&", "&"); sString = util.ReplaceText(sString, "<", "<"); sString = util.ReplaceText(sString, ">", ">"); sString = util.ReplaceText(sString, "'", "'"); sString = util.ReplaceText(sString, "\"", """); return sString; } public String ReadSingleElementValue( String sXmlFile, String sPath) throws Exception { DocumentBuilderFactory oDocumentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder oDocumentBuilder = oDocumentBuilderFactory.newDocumentBuilder(); Document oDoc = oDocumentBuilder.parse(getClass().getResourceAsStream(sXmlFile)); return GetElementNode(oDoc, sPath).getFirstChild().getNodeValue(); } public String ReadSingleElementAttribute( String sXmlFile, String sPath, String sAttribute) throws Exception { DocumentBuilderFactory oDocumentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder oDocumentBuilder = oDocumentBuilderFactory.newDocumentBuilder(); Document oDoc = oDocumentBuilder.parse(getClass().getResourceAsStream(sXmlFile)); return GetElementNode(oDoc, sPath).getAttribute(sAttribute); } public HashMap ReadElementsAttribute( String sXmlFile, String sPath, String sKeyAttribute, String sValueAttribute) throws Exception { DocumentBuilderFactory oDocumentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder oDocumentBuilder = oDocumentBuilderFactory.newDocumentBuilder(); Document oDoc = oDocumentBuilder.parse(this.getClass().getClassLoader().getResourceAsStream(sXmlFile)); HashMap oResult = new HashMap(); //NodeList oNodeList = oDoc.getElementsByTagName("Error"); NodeList oNodeList = GetElementNodeList(oDoc, sPath); for (int i=0 ; i<oNodeList.getLength() ; i++) { NamedNodeMap oAttributes = oNodeList.item(i).getAttributes(); String sKey = oAttributes.getNamedItem(sKeyAttribute).getNodeValue(); String sValue = oAttributes.getNamedItem(sValueAttribute).getNodeValue(); oResult.put(sKey, sValue); } return oResult; } public Element GetElementNode(Document oXmlDoc, String sPath) { String[] oTagList = sPath.split("/"); Element oElement = (Element)oXmlDoc.getElementsByTagName(oTagList[0]).item(0); for (int i=1 ; i<oTagList.length ; i++) { oElement = (Element)oElement.getElementsByTagName(oTagList[i]).item(0); } return oElement; } public NodeList GetElementNodeList(Document oXmlDoc, String sPath) { String[] oTagList = sPath.split("/"); if (oTagList.length == 1) { return oXmlDoc.getElementsByTagName(oTagList[0]); }else { Element oElement = (Element)oXmlDoc.getElementsByTagName(oTagList[0]).item(0); for (int i=1 ; i<oTagList.length ; i++) { NodeList oNodeList = oElement.getElementsByTagName(oTagList[i]); if (i == oTagList.length - 1) { return oNodeList; }else { oElement = (Element)oNodeList.item(0); } } } return null; } public Document constructDocumentFromXmlString(String xml){ Document output = null; try{ if(!util.isEmpty(xml)){ ByteArrayInputStream xmlStream = new ByteArrayInputStream(xml.getBytes("UTF-8")); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); // Set namespaceAware to true to get a DOM Level 2 tree with nodes // containing namesapce information. This is necessary because the // default value from JAXP 1.0 was defined to be false. dbf.setNamespaceAware(true); dbf.setValidating(false); dbf.setIgnoringComments(true); dbf.setIgnoringElementContentWhitespace(false); dbf.setCoalescing(true); DocumentBuilder db = dbf.newDocumentBuilder(); output = db.parse(xmlStream); } } catch(Exception e){ util.debug("Error in XML: " + xml); e.printStackTrace(); output = null; } return output; } public Document createDocument(){ return this.constructDocumentFromXmlString("<documentRoot></documentRoot>"); } public String convertDocumentToString(Document document){ return convertDocumentToString(document, false); } public String convertDocumentToString(Document document, boolean omitXMLDeclaration){ if (util.isEmpty(document)) return null; String output = null; try{ OutputFormat format = new OutputFormat(document); format.setOmitXMLDeclaration(omitXMLDeclaration); StringWriter strOut = new StringWriter(); XMLSerializer xmls = new XMLSerializer(strOut, format); xmls.serialize(document.getDocumentElement()); output = strOut.toString(); } catch(Exception e){ e.printStackTrace(); } return output; } public Element getChild(Element element, String childElementName){ return(Element)element.getElementsByTagName(childElementName).item(0); } public String getChildText(Element element, String childElementName){ String output = ""; try{ output = element.getElementsByTagName(childElementName).item(0).getFirstChild().getNodeValue(); } catch(Exception e){ } return output; } public String getText(Element element){ String output = ""; try{ output = element.getFirstChild().getNodeValue(); } catch(Exception e){ } return output; } }
发表评论
-
HTTPClient
2012-12-21 21:11 0public class RenRen { // The ... -
Export To Excel - Testing
2012-12-18 13:15 0MainTest ..... Map configM ... -
Export To Excel - ExcelUtils.java [Version 0.2]
2012-12-18 13:11 9import java.io.BufferedReader; ... -
Export To Excel - Action Oupt Excel
2012-11-23 13:49 10public String doAction(Work ... -
Export To Excel - ExcelUtils.java
2012-12-17 16:31 3import java.io.BufferedReader; ... -
Export To Excel - ExcelDAO.java
2012-12-18 12:55 5import java.sql.CallableStateme ... -
Export To Excel - commonExcelStyle.css
2012-12-18 12:55 6body { FONT-FAMILY: "Ari ... -
Export To Excel - ExcelConstants.java
2012-12-18 12:55 5/** * <p><b> * ... -
Export To Excel - ExcelRowList.java
2012-12-18 09:55 5import java.util.ArrayList; im ... -
Export To Excel - ExcelRowItem.java
2012-12-17 16:32 7import java.util.ArrayList; im ... -
Export To Excel - ExcelInfo.java
2012-11-23 13:50 8/** * <p><b> * ... -
Export To Excel - ExcelColList.java
2012-11-23 13:50 6import java.util.ArrayList; im ... -
Export To Excel - ExcelColItem.java
2012-11-23 13:50 11Version 0.1 import java.uti ... -
Export To Excel - ExcelCellItem.java
2012-11-23 13:49 7public class ExcelCellItem { ... -
Util
2012-12-17 16:32 640import java.io.BufferedReader; ... -
DMSUtil
2012-12-17 16:31 663import java.io.ByteArrayInputSt ... -
PooledConnectionManager
2012-12-17 16:31 895import java.sql.Connection; im ... -
FloatValidator
2012-10-05 13:42 729public class FloatValidator ext ... -
XMLEncode
2012-08-30 18:43 1020public class XMLEncode implemen ... -
tagUtil
2012-08-30 18:42 846import java.util.Map; public ...
相关推荐
XMLHelper XMLHelper XMLHelper
C# XmlHelper XmlHelper帮助类
c# XMLHelper xml操作类
我的网址:www.0379zd.com欢迎光临。C#操作XML的经典源码(XMLHelper),xml是比较重要的技术,需要精通。
XMLHelper 封装类
C#中读写XML文件的类,在项目代码中引用该类后,采用“XmlHelper.方法名”来使用
XmlHelper是一个工具类,你可以调用在里面的函式来对XML档案进行Serialize or DeSerialize的存取
XmlHelper类提供对XML数据库的读写~~~~~~~~~~~~~~~
xml操作类,封装操作方法,可以直接调用直接对xml节点、元素进行增删改查操作
最近开发用到了XML配置参数,比起Config方便很多,晚上整理了一下代码,给大家做了个Demo分享一下 1、自动添加多级子节点,如果存在则在后面增加Element 2、自动删除任意子节点及后续节点 3、自动更新所有匹配...
After working with a couple of XML projects for the last six months, I am ready to share a class I wrote called XmlHelper which got me through all the complexity of XML and made my life a lot simpler....
网上找了一个非常不错的XML操作类、引用就可以使用
支持各种xml解析,序列化、反序列化。完整类,直接粘贴到项目中就能用。自己亲测可用。
XMLHelperXMLHelperXMLHelperXMLHelperXMLHelperXMLHelperXMLHelperXMLHelper
在网上找了一下关于XML文件的增删改查操作,感觉实在太混乱了,所以自己整理了一下,并写成了一个类库,欢迎各位下载。
XPath路径表达式选取XML节点.doc 为XML中常用... XmlHelper.CS 一个类文件 包括对XML 文件的常规操作 xml字符串转换为dataTable DataTable 转换为xml 找出所有与pPath匹配路径的节点创建dataTable,并设置主键 等功能
博文链接:https://janwer.iteye.com/blog/193120
c# xmlHelper处理xml类型字符串
通用的标准Xml操作类(功能完美封装)XmlHelper.cs
用这个类来对配置文件进行操作是比较方便的,当然支持对单个节点的操作,类中有使用方法的注释,挺方便的,分享下