知识大全 对XML文档进行添、删、改、查的程序
Posted 属性
篇首语:青春须早为,岂能长少年。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 对XML文档进行添、删、改、查的程序相关的知识,希望对你有一定的参考价值。
对XML文档进行添、删、改、查的程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
下面写了个对XML文档进行添 删 改 查的程序 先是xml文档 代码如下: <?xml version= encoding= utf ?><studentInfo> <student> <name id= >aa</name> <age> </age> <sex>男</sex> <score> </score> </student> <student> <name id= >bb</name> <age> </age> <sex>女</sex> <score> </score> </student> <student> <name id= >cc</name> <age> </age> <sex>女</sex> <score> </score> </student> </studentInfo> 然后就是java应用程序 注解已说明 首先要在外面下载个包 xerces jar (当然也可用Eclipse中自带的 只是代码稍稍不同)代码如下: package Dome; import java io BufferedReader; import java io FileReader; import javax xml transform Transformer; import javax xml transform TransformerFactory; import javax xml transform dom DOMSource; import javax xml transform stream StreamResult; import apache xerces parsers DOMParser; import w c dom Attr; import w c dom Document; import w c dom Element; import w c dom NamedNodeMap; import w c dom Node; import w c dom NodeList; import w c dom Text; import xml sax InputSource; public class DomeTest /* * 此方法为得到Document对象实例 */ public static Document getInstance(String xmlPath) Document doc = null; try BufferedReader bf = new BufferedReader(new FileReader(xmlPath)); DOMParser ps = new DOMParser();// xml解析器 ps parse(new InputSource(bf));// 解析xml doc = ps getDocument();// 获得Document对象 catch (Exception e) e printStackTrace(); return doc; /* * 此方法用来打印元素等 */ public static void printAll(Document doc) NodeList nl = doc getElementsByTagName( * ); Node n; for (int i = ; i < nl getLength(); i++) n = em(i); System out println(n getNodeName() + ); /* * 此方法用来打印属性 */ public static void printAttr(Document doc) NodeList nl = doc getElementsByTagName( * ); Element e; Attr att;// 属性对象 NamedNodeMap nnm;// 属性对象集合 String attrname; String attrval; for (int i = ; i < nl getLength(); i++) e = (Element) em(i); System out println(e getTagName() + : + e getFirstChild() getNodeValue()); nnm = e getAttributes(); if (nnm != null) for (int j = ; j < nnm getLength(); j++) att = (Attr) em(j); attrname = att getName(); attrval = att getValue(); System out println( 属性是 + attrname + = + attrval); /* * 此为添加方法 */ public static void addElement(Document dc) Element estu = dc createElement( student ); Element ename = dc createElement( name ); Element esex = dc createElement( sex ); Element eage = dc createElement( age ); Element escore = dc createElement( score ); Text tname = dc createTextNode( 张三 ); Text tsex = dc createTextNode( 男 ); Text tage = dc createTextNode( ); Text tscore = dc createTextNode( ); estu appendChild(ename) appendChild(tname); estu appendChild(esex) appendChild(tsex); estu appendChild(eage) appendChild(tage); estu appendChild(escore) appendChild(tscore); dc getDocumentElement() appendChild(estu); /* * 此为修改方法 */ public static void updateElement(Document dc String stname String stscore) NodeList nl = dc getElementsByTagName( name ); Element e; for (int i = ; i < nl getLength(); i++) e = (Element) em(i); if (e getFirstChild() getNodeValue() equals(stname)) Node n = e getParentNode(); NodeList nd = n getChildNodes(); for (int j = ; j < nd getLength(); j++) Node node = em(j); if (node getNodeName() equals( score )) node getFirstChild() setNodeValue(stscore); /* * 此方法为删除方法 */ public static void delElement(Document dc String idValue) NodeList nl=dc getElementsByTagName( student ); Element e; NamedNodeMap nnm;//属性集合 Attr att; for(int i= ;i<nl getLength();i++) e=(Element)em(i); nnm=e getAttributes(); if(nnm!=null) for(int j= ;j<nnm getLength();j++) att=(Attr)em(j); if((att getName() equals( id ))&&(att getValue() equals(idValue))) (e getParentNode()) removeChild(e); /* * 此方法把在程序中所做的操作保存于xml文档中 */ public static void saveXml(Document dom) TransformerFactory tff = TransformerFactory newInstance(); try Transformer tf = tff newTransformer(); tf setOutputProperty( encoding utf ); tf transform(new DOMSource(dom) new StreamResult( E:\\\\xml\\\\xmlExample\\\\student xml )); catch (Exception e) e printStackTrace(); /** * main方法 */ public static void main(String[] args) Document dc = getInstance( E:\\\\xml\\\\xmlExample\\\\student xml ); // printAll(dc); // addElement(dc); //updateElement(dc aa ); delElement(dc ); saveXml(dc); printAttr(dc); cha138/Article/program/net/201311/11853相关参考
用XmlDocument创建XML文档 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 代码如下&
C#来创建和读取XML文档 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 扩展标记语言XML(e
XPath查询XML文档的注意事项 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!老鼠与人最好的排列
使用PHP5.0轻松解析XML文档(1) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 用sax
利用XSL和ASP实现XML文档在线编辑 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 本文通过
XML开发入门基础:XML元素 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! XML文档包含XM
GhostDoc自动生成XML注释 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!将XML注释迅速添
ASP实例:读取xml文件的程序 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!strSourceF
知识大全 安卓系统手机下载什么应用程序可以打开doc和exe格式的文档
安卓系统手机下载什么应用程序可以打开doc和exe格式的文档?安卓系统手机下载可以下载以下应用程序就可以打开doc和exe格式的文档了。1、可以在手机上下载安装金山公司推出的金山WPSOffice手机
word文档变成了exe文件,怎么恢复?doc文件变成了exe文件,出现这种情况,可以尝试以下方法解决:1、首先关闭杀毒软件,双击A.exe,这时A.doc被打开了,然后将文件另存为A.doc。2、删