查询XML文档
标签:数据访问 ADO.NET
查询XML文档 LINQ to XML类提供属性和方法,返回可查询的类的对象集合。
将XML对象作为LINQ查询对象:
.......
XDocument customers = XDocument.Load(xmlFileName);
var queryResult = from c in customers.Elements() select c.Name;
使用查询成员
1)Element():返回文档 或 片段中的第一个元素。文档的话就返回根元素; 2)Descendants():返回文档 或 片段中的所有子元素(所有级别); 例:queryResults = from c in customers.Descendants() select c.Name; foreach (var item in queryResults.Distinct()) //筛选出不同的元素
Descendants(string)重载: queryResults = from c in customers.Desendants("customer") select c; //查询指定名称的子元素,返回所有customer元素。
3)Ancestors():返回比源元素级别高的一组元素;
4)Attribute():返回当前选中元素的所有属性;
例:queryResults = from c in customers.Descendants("customer").Attributes() select c; //返回customers中所有customer元素的属性值
相关文档:
Definition comparer class,
class ItemComparer : IEqualityComparer<XElement>
{
public bool Equals(XElement x, XElement y)
{
return x.Attribute("Name").Value == x.Attribute("Name").Value;
}
public int GetHashCode(XElement obj)
......
一个XML文件通常包含文件头和文件体两大部分
1. 文件头
XML文件头由XML声明与DTD文件类型声明组成。其中DTD文件类型声明是可以缺少的,关于DTD声明将在后续的内容中介绍,而XML声明是必须要有的,以使文件符合XML的标准规格。
在前面的Flowers.xml文件中的第一行代码即为XML声明:
<?xml 版 ......
from:http://www.xland.com.cn/article/7/81/0804/28778.htm
本类实现:
数据库信息导出:word,excel,json,xml,sql
数据库恢复:从sql,从文件
具体用法:
首先新建测试用数据库mytest,然后在里面建张表
PHP代码:
以下是代码片段:
--
-- 表的结构 `test`
--
CREATE TABLE `test` (
`id ......
public int createXMLFile(String filename) {
int returnValue = 0;
Document document = DocumentHelper.createDocument(); //生成Document,用于管理XML文档
Element booksElement = document.addElement("books"); //添加 ......
import java.io.File;
import java.io.FileNotFoundException;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ResolveXmlFile {
public void resolverXml() throws DocumentException, FileNotFoundExcept ......