jaxp下用DOM进行xml文档解析
jaxp是sun公司的解析xml文档的api,他支持用dom和sax两种方法解析一个xml文档.
dom方法是解析引擎将整个xml文档装载到内存中作为一个document对象,dom方法得到一个对象就知道所有的节点
增删改查很方便,缺点是要装载整个xml文档,如果xml文档很大,效率就比较低
sax方法是采用事件作为驱动的,遇到一个标签是一个事件,读到标签里面的内容是个事件,读到标签的结束是个事件.
有点是速度快效率高,缺点是对元素的增删不方面.
<?xml version="1.0" encoding="UTF-8"?><书架>
<书 name="bbb">
<书名>走向北大清华</书名>
<售价>39</售价></书>
<书>
<书名>走向哈佛剑桥</书名>
<作者>BBB</作者>
<售价>56</售价>
</书>
</书架>
采用Dom对xml文件进行解析的例子;
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class XmlParserDemo {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 新建一个DocumentBuilderFactory 解析器工厂
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
// 通过解析器工厂产生一个解析器对象
DocumentBuilder builder = factory.newDocumentBuilder();
// 解析器对象有一个parse的方法可以读进来一个xml文件
// 读到的xml文件是以document对象的方式保存在内存中的
Document document = builder.parse("src/book.xml");
// listAllNode(document);
//listAllNode1(document);
//readElement(document);
相关文档:
现在很多软件都是以xml文件作为数据源,而很多数据工具如pb等却只能另存为txt、excel等格式,为此需要一工具能将txt文本转换成xml文件。google了一下,没找到合适的,冲动之下用C#写了一个txt文本转xml格式文本的小程序,代码如下。
新建一个w ......
1、初始化
Load 导入一个XML文件到CMarkup的对象中,并对它进行解析。类似C#的Load。
SetDoc 从字符串中导入XML数据,并对它解析。类似C#的LoadXml。
2、输出
Save 将XML数据写入文件中。类似C#的Save。
GetDoc 将整个XML数据文档作为字符串返回。
3、改变当前位置
FindElem 定位到下一个元素,可能和一个标签名或路 ......
sql2005中一个xml聚合的例子 收藏
该问题来自论坛提问,演示SQL代码如下
--建立测试环境
set nocount on
create table test(ID varchar(20),NAME varchar(20))
insert into test select '1','aaa'
insert into test select '1','bbb'
insert into test select '1','ccc'
insert into test select '2','ddd'
inser ......
在XML数据中,一些特殊字符必须用转义符号来代替,而回车换行字符就是属于特殊符号。
空格 ( )
Tab (	)
回车 (
)
换行 (
)
下面是一个报表XML数据,里面包括有回车换行字符:
<report>
<NewDataSet>
<Table>
<CustomerID>BLONP</CustomerID& ......
方法一:按照XML的结构一步一步的构建XML文档.
通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的
方法二:直接定影XML文档,然后保存到文件。
通过"XmlDocument"类中的"LoadXml"方法
.aspx前台代码:
<%@ Page Language="C# ......