`
isiqi
  • 浏览: 16591859 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

XPathDocument的相关用法(待整理)

阅读更多

<?xml version="1.0" encoding="utf-8"?>
<notepad>
<topic>主题</topic>
<content>内容内容</content>
</notepad>

xpath.aspx
<%@Page Language="c#" ValidateRequest="false" Debug="true"%>
<%@Import Namespace="System.Xml.XPath"%>
<Script Language="C#" Runat="Server">
public void Page_Load(Object src,EventArgs e)
{
XPathDocument doc = new XPathDocument(Server.MapPath("demo.xml"));
XPathNavigator nav = doc.CreateNavigator();
XPathNodeIterator ite = nav.Select("/notepad/topic");
//移动到下一个节点,下一个节点是文字节点。
ite.MoveNext();
Response.Write (ite.Current.Value);
ite = nav.Select("/notepad/content");
//移动到下一个节点,下一个节点是文字节点。
ite.MoveNext();
Response.Write (ite.Current.Value);
}
</Script>

C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Xml.XPath;

namespace convertDell
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Convertbutton_Click(object sender, EventArgs e)
{
// char[] Oldchar = {'?', '3', '2', '4'};
string[] OldString;
XPathDocument XPathDom;
XPathNavigator XPathNav;
XPathNodeIterator XPathNodeIte;
string ExpressionStr,Newchar;
ExpressionStr = string.Empty;
Newchar = string.Empty;
//OldString = string.Empty;
OldString = OldtextBox.Text.Split(new char[]{'\r','\n'},StringSplitOptions.RemoveEmptyEntries);
XPathDom=new XPathDocument("ConvertRull.xml");
XPathNav = XPathDom.CreateNavigator();

foreach (string Old in OldString)
{
ExpressionStr = "convertrull/rull1/word[@old='" + Old + "']";
XPathNodeIte = XPathNav.Select(ExpressionStr);
/*
while (XPathNodeIte.MoveNext())
Newchar += XPathNodeIte.Current.Value + "\r\n";
*/
XPathNodeIte.MoveNext();
//移动到下一个结点,下一个结点才是文字结点,当前结点是元素结点,若没往下移,取出来的
//值则是元素的值,若元素有好多个相同,则值就好多个,即去掉MoveNext()这行代码
Newchar += XPathNodeIte.Current.Value + "\r\n";
}
ConverttotextBox.Text = Newchar;
}
}
}

分享到:
评论

相关推荐

    XPathDocument 与 XmlDocument 结合使用

    ### XPathDocument 与 XmlDocument 结合使用 #### XPathDocument 和 XmlDocument 的基本概念 - **XPathDocument**:这是一种专门用于处理XML文档的对象,它提供了一个只读且支持随机访问的方式来查询XML数据。...

    C# XML 解析方式

    标题 "C# XML 解析方式" 涉及到的是在C#编程环境中处理XML文档的方法。XML(Extensible Markup Language)是一种结构化数据存储格式,广泛用于数据交换、配置文件和应用程序之间的通信。C#提供了多种API来解析XML,...

    C#读取XML文件并写入数据库

    下面,我们将详细介绍三种使用C#读取XML文件并将其写入数据库的方法。 1. **使用XmlReader类逐行读取并写入** - `XmlReader` 是一个高效的流式读取器,不占用大量内存。通过创建`XmlReader`实例,我们可以逐个节点...

    xmlfile_C#源码_

    你可以使用Load方法加载XML文件,然后通过它的方法和属性来解析和修改XML结构。例如,Find方法可以查找XML节点,SelectNodes和SelectSingleNode用于基于XPath表达式选择节点。 2. **XDocument类**:XDocument是LINQ...

    C# 写的测试XPath 的小工具

    接着,我们使用Select方法选取XML中的所有book元素,并通过MoveNext遍历选取的节点,最后使用Select方法选取每个book元素的子节点(author和title)。 如果你正在开发一个XPath测试工具,可能需要实现以下功能: 1...

    c#编程实例-XML读取

    总结起来,C#中读取XML的方法多样,包括使用XmlDocument、XPathDocument、XPathNavigator以及LINQ to XML。选择哪种方法取决于项目需求,例如性能要求、代码可读性以及是否需要进行复杂查询。了解并熟练掌握这些方法...

    System.XML.dll System.XML.DLL

    1. 读取XML:使用`XmlDocument`的`Load`方法可以从文件或流中加载XML文档,然后通过`GetElementsByTagName`、`SelectNodes`等方法获取指定标签的元素。 2. 写入XML:`XmlTextWriter`类可以用来创建和写入XML文档,...

    xml.rar_Csharp xml_xml_xml csharp

    这个压缩包中还有名为“www.pudn.com.txt”的文件,可能包含有关示例的额外信息或说明,例如代码的解释、使用指南或相关链接。另外,“22”可能是另一个文件名,但因为信息不完整,无法确定具体内容。不过,结合其他...

    Xml的相关操作(具体如下)

    以下将详细介绍XML在C#中的使用及其相关知识点。 1. **XML解析**: - **DOM解析**:Document Object Model (DOM) 是一种将XML文档映射为树形结构的方法,允许开发者通过节点操作来访问和修改XML文档。在C#中,可以...

    C# xpath 最新应用语法

    在C#中,我们可以使用`SelectNodes()`方法结合轴来选取节点,如`XmlNodeList nodes = doc.SelectNodes("//bookstore/child::book");` 3. 节点测试:节点测试用于确定轴选取的节点类型。它可以是元素名称(如`book`...

    xpath-as3-1.0.1

    API参考文档通常会列出库中所有的类、方法、属性和函数,以及它们的使用方式和参数说明,这对于使用XPath-as3库编写代码非常有用。教程和示例代码则可以帮助开发者快速上手,理解如何在实际项目中应用XPath查询。 ...

    把数据读到xml文件

    在ASP.NET中,我们可以使用多种方法来读取XML文件。以下是一些主要的方法: 1. **XmlDocument类**:这是.NET框架提供的一种基础XML处理类,可以用来加载、解析和操作XML文档。通过`new XmlDocument()`创建实例,...

    Asp.net操作XML源码

    在Asp.net中,解析XML文件通常使用`Load`方法: ```csharp xmlDoc.Load("path_to_xml_file.xml"); ``` 对于XML的查询,XPath(XML Path Language)是强大的选择工具。Asp.net支持XPathNavigator和XPathDocument类...

    Asp.net 通用公用的方法归纳

    对于XML数据的读取,可以使用System.Xml命名空间中的类,如XmlDocument或XPathDocument。创建一个方法,加载XML文件,然后提供查询和解析XML的接口。也可以使用更现代的XmlReader或XDocument,它们在性能和易用性上...

    C#中XML文件的使用

    - 使用`XmlDocument.Load()`或`XDocument.Load()`方法加载XML文件。例如: ```csharp XmlDocument doc = new XmlDocument(); doc.Load("path_to_xml_file.xml"); // 或者使用LINQ to XML XDocument xdoc = ...

    XML的各种读写,适合对XML的初学者!!!

    使用`Read()`方法可以逐个读取节点,如元素、属性、文本等。 ```csharp using System.Xml; XmlTextReader reader = new XmlTextReader("file.xml"); while (reader.Read()) { switch (reader.NodeType) { case ...

    《突破C#编程实例五十讲》源文件\第八部分XML

    - 使用XmlNode的SelectNodes或SelectSingleNode方法,结合XPath表达式查询XML节点。 4. XML文档写入: - 创建新的XML文档,可以先创建一个空的XmlDocument对象,然后通过AppendChild等方法添加元素和属性。 - ...

    .NET一些基础的优化知识

    4. **字符串比较优化**: 使用String.Compare方法进行大小写不敏感的字符串比较,而不是通过UpperCase或LowerCase转换后再比较。String.Compare方法可以直接忽略大小写并进行比较,避免了不必要的字符串转换。 5. **...

    C# XML 处理

    - 使用XPathDocument和XDocument的LoadOptions参数可以控制加载行为,如是否保留空白或处理指令。 9. **安全注意事项** - 解析XML时要防范XXE(XML External Entity)攻击,禁用外部实体加载或使用安全配置。 - ...

    aspnet C# xml常用操作方法

    - `XDocument` 类(LINQ to XML):使用`XDocument.Load`或`XDocument.Parse`方法,提供更简洁的API来查询XML。 2. **写入XML文件** - `XmlWriter` 类:用于创建新的XML文档或追加到现有XML文件。 - `XDocument`...

Global site tag (gtag.js) - Google Analytics