XPathDocument的相关用法(待整理)
2011-02-24 17:39
417 查看
<?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;
}
}
}
<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;
}
}
}
相关文章推荐
- 快速掌握mysql,可备用查找相关用法(吐血整理)
- mysql date函数相关用法整理(持续更新)
- 快速掌握mysql,可备用查找相关用法(吐血整理)
- document.evaluate的详细用法--使用XPath查找某些节点对象[z]
- 整理js和jquery相关用法(待续)
- XPathDocument的用法
- document.evaluate的详细用法--使用XPath查找某些节点对象[z]
- 【整理】linux下测试RTC驱动相关的命令date和hwclock常见用法简介
- [应用] 【整理】linux下测试RTC驱动相关的命令date和hwclock常见用法简介
- android开发相关资料整理【2011-10-17】
- OC内存管理相关整理
- 【重新整理】正则表达式,MD, VIM相关操作
- C++ List的用法(整理)
- schedule调用相关整理
- js 页面元素的几个用法-document,form,images,selection,location,body
- document.execCommand()的用法小记
- Halcon一维运算相关算子整理
- bitset用法整理
- mysql性能相关命令用法
- linux查看硬件信息及驱动设备相关整理