|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
但是一些大型开发或者是保密型比较高的项目都会用java,原因有2点,一:java是开源的,不怕别人留后门,偷我工具,.net就不一样了,保持微软的一向风格,源代码不公开dom|xml|转换<Pstyle="TEXT-INDENT:2em">本文扼要形貌了DOM的观点和外部逻辑布局,实例报告DOM文档操纵和XML文件相互转换的java完成历程。<Pstyle="TEXT-INDENT:2em">1.DOM简介<Pstyle="TEXT-INDENT:2em">今朝,W3C已于2000年11月13日推出了标准DOMlevel2。文档对象模子(DOM)是HTML和XML文档的编程接口标准,它与平台和言语是有关的,因此能够用各类言语在各类平台上完成。该模子界说了THML和XML文件在内存中的逻辑布局(即为文档),供应了会见、存取THML和XML文件的办法。使用DOM标准,能够完成DOM文档和XML之间的互相转换,遍历、操纵响应DOM文档的内容。能够说,要自在的利用XML文件,就要用到DOM标准。<Pstyle="TEXT-INDENT:2em">2.DOM外部逻辑布局<Pstyle="TEXT-INDENT:2em">DOM文档中的逻辑布局能够用节点树的情势举行表述。经由过程对XML文件的剖析处置,XML文件中的元素便转化为DOM文档中的节点对象。DOM的文档节点有Document、Element、Comment、Type等等节点范例,个中每个DOM文档必需有一个Document节点,而且为节点树的根节点。它能够有子节点,大概叶子节点如Text节点、Comment节点等。任何的格局优秀的XML文件中的每个元素均有DOM文档中的一个节点范例与之对应。使用DOM接口将XML文件转化成DOM文档后,我们就能够自在的处置XML文件了。<Pstyle="TEXT-INDENT:2em">3.java中的DOM接口<Pstyle="TEXT-INDENT:2em">DOM标准供应的API的标准,今朝Sun公司推出的jdk1.4测试版中的javaAPI遵守了DOMlevel2Core保举接口的语义申明,供应了响应的java言语的完成。<Pstyle="TEXT-INDENT:2em">在org.xml.dom中,jkd1.4供应了Document、DocumentType、Node、NodeList、Element、Text等接口,这些接口均是会见DOM文档所必需的。我们能够使用这些接口创立、遍历、修正DOM文档。<Pstyle="TEXT-INDENT:2em">在javax.xml.parsers中,jkd1.4供应的DoumentBuilder和DocumentBuilderFactory组合能够对XML文件举行剖析,转换成DOM文档。<Pstyle="TEXT-INDENT:2em">在javax.xml.transform.dom和javax.xml.transform.stream中,jdk1.4供应了DOMSource类和StreamSource类,能够用来将更新后的DOM文档写进天生的XML文件中。<Pstyle="TEXT-INDENT:2em">4.例程<Pstyle="TEXT-INDENT:2em">4.1将XML文件转化成DOM文档<Pstyle="TEXT-INDENT:2em">这个历程是取得一个XML文件剖析器,剖析XML文件转化成DOM文档的历程。<Pstyle="TEXT-INDENT:2em">Jdk1.4中,Document接口形貌了对应于全部XML文件的文档树,供应了对文档数据的会见,是该步骤的方针。Document接口能够从类DocumentBuilder中猎取,该类包括了从XML文档取得DOM文档实例的API。XML的剖析器能够从类DocumentBuilderFactory中猎取。在jdk1.4中,XML文件转化成DOM文档能够有以下代码完成:<Pstyle="TEXT-INDENT:2em">- //取得一个XML文件的剖析器DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();//剖析XML文件天生DOM文档的接口类,以便会见DOM。DocumentBuilderbuilder=factory.newDocumentBuilder();document=builder.parse(newFile(FileName));
复制代码 <Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">4.2遍历DOM文档<Pstyle="TEXT-INDENT:2em">取得接口类document实例后,能够对DOM的文档树举行会见。要遍历DOM文档,起首要取得Root元素。然后取得Root元素的子节点列表。这里经由过程递回的办法完成遍历的目标。<Pstyle="TEXT-INDENT:2em">- //取得Root元素Elementelement=document.getDocumentElement();//取得Root元素的子节点列表nodelist=element.getChildNodes();//用递回办法完成DOM文档的遍历GetElement(nodelist);
复制代码 <Pstyle="TEXT-INDENT:2em"><Pstyle="TEXT-INDENT:2em">个中GetElement办法完成以下:<Pstyle="TEXT-INDENT:2em">- publicvoidGetElement(NodeListnodelist){Nodecnode;inti,len;Stringstr;if(nodelist.getLength()==0)//该节点没有子节点return;}for(i=0;i1)System.out.println(""+str+""+len);}}}
复制代码 <Pstyle="TEXT-INDENT:2em">注重:下面的代码只是显现Node范例和Text范例的对象。它们的范例标识分离是1和3。<Pstyle="TEXT-INDENT:2em">4.3修正DOM文档<Pstyle="TEXT-INDENT:2em">修正DOM文档的API在DOMlevel2Core标准中做了申明,jkd1.4中的org.xml.dom中完成了这些API。修正DOM文档操纵次要会合在Document、Element、Node、Text等类中,这里给出的例子中是在剖析出的DOM文档中增添一系列对象,对应与在XML文件中增添一笔记录。<Pstyle="TEXT-INDENT:2em">- //取得Root对象Elementroot=document.getDocumentElement();//在DOM文档中增添一个Element节点Elementbooktype=document.createElement("COMPUTES");//将该节点转化成root对象的子节点root.appendChild(cdrom);//在DOM文档中增添一个Element节点Elementbooktitle=document.createElement("Title");//将该节点转化成booktype对象的子节点booktype.appendChild(booktitle);//在DOM文档中增添一个Text节点Textbookname=document.createTextNode("understandCorba");//将该节点转化成bookname对象的子节点booktitle.appendChild(bookname);
复制代码 <Pstyle="TEXT-INDENT:2em">4.4将DOM文档转化成XML文件<Pstyle="TEXT-INDENT:2em">- //取得将DOM文档转化为XML文件的转换器,在jdk1.4中,有类TransformerFactory//来完成,类Transformer完成转化API。TransformerFactorytfactory=TransformerFactory.newInstance();Transformertransformer=tfactory.newTransformer();//将DOM对象转化为DOMSource类对象,该对象体现为转化成其余表达情势的信息容器。DOMSourcesource=newDOMSource(document);/*取得一个StreamResult类对象,该对象是DOM文档转化成的其他情势的文档的容器,能够是XML文件,文本文件,HTML文件。这里为一个XML文件。*/StreamResultresult=newStreamResult(newFile(“text.xml”));//挪用API,将DOM文档转化成XML文件。transformer.transform(source,result);
复制代码 <Pstyle="TEXT-INDENT:2em">这里供应了该例程的完全程序,该例程在windows2000中jdk1.4情况中运转经由过程。以上给出了一个例子,读者能够从中懂得到对DOM操纵的思绪。由于对DOM的操纵均遵守了DOM标准,以是也合用于别的言语对DOM的处置。
如果你学习的是市场营销,是销售,也许参加大课堂的学习会更合适,因为你的工作能力中有个基础就是搭建自己的人脉, |
|