C#对XML完整操作Word格式文档下载.docx
- 文档编号:18265102
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:26
- 大小:25.83KB
C#对XML完整操作Word格式文档下载.docx
《C#对XML完整操作Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C#对XML完整操作Word格式文档下载.docx(26页珍藏版)》请在冰豆网上搜索。
intnum=0;
foreach(XmlElementbirthdayindom.DocumentElement.ChildNodes)
{
//读取数据
stringtype=birthday.SelectSingleNode("
type"
).InnerText;
stringdate=birthday.SelectSingleNode("
date"
stringtitle=birthday.SelectSingleNode("
title"
stringname=birthday.SelectSingleNode("
name"
stringtext=name+"
:
"
+title;
//节点文字
stringimage=type;
//节点图片
stringdata=num.ToString();
//节点对应数据
num++;
//装载示例,将新建的节点添加到TreeView
TreeNodenode=newTreeNode(text,data,image);
//createanewnode
treeView.Nodes.Add(node);
//编辑示例:
将当前节点的生日更改为当前日期
birthday.SelectSingleNode("
).InnerText=DateTime.Now.ToString();
//删除示例:
将当前节点删除
birthday.ParentNode.RemoveChild(birthday);
}
dom.Save();
回答二
这是以前自己做过的一个测试。
楼主可以参考一下。
=======================bookstore.XML内容====================
encoding="
gb2312"
bookstore>
book>
/book>
bookgenre="
李赞红"
ISBN="
2-3631-4"
CS从入门到精通<
author>
候捷<
/author>
price>
58.3<
/price>
/bookstore>
=======================读取========================
XmlDocumentdoc=newXmlDocument();
doc.Load(@"
d:
\bookstore.xml"
XmlElementroot=doc.DocumentElement;
MessageBox.Show(root.SelectNodes("
book"
)[0].InnerText);
=======================添加=========================
XmlDocumentxmlDoc=newXmlDocument();
xmlDoc.Load(@"
XmlNoderoot=xmlDoc.SelectSingleNode("
bookstore"
//查找<
XmlElementxe1=xmlDoc.CreateElement("
//创建一个<
节点
xe1.SetAttribute("
genre"
"
//设置该节点的genre属性
ISBN"
//设置该节点的ISBN属性
XmlElementxesub1=xmlDoc.CreateElement("
//添加一个名字为title的子节点
xesub1.InnerText="
CS从入门到精通"
;
//设置文本
xe1.AppendChild(xesub1);
//把title添加到<
节点中
XmlElementxesub2=xmlDoc.CreateElement("
author"
xesub2.InnerText="
候捷"
xe1.AppendChild(xesub2);
XmlElementxesub3=xmlDoc.CreateElement("
price"
xesub3.InnerText="
58.3"
xe1.AppendChild(xesub3);
root.AppendChild(xe1);
//把book添加到<
根节点中
xmlDoc.Save(@"
======================修改========================
XmlNodeListnodeList=xmlDoc.SelectSingleNode("
).ChildNodes;
//获取bookstore节点的所有子节点
foreach(XmlNodexninnodeList)//遍历所有名字为bookstore的子节点
{
XmlElementxe=(XmlElement)xn;
//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("
)=="
)//如果genre属性值为“李赞红”
xe.SetAttribute("
update李赞红"
//则修改该属性为“update李赞红”
XmlNodeListnls=xe.ChildNodes;
//继续获取xe(xn)子节点的所有子节点
foreach(XmlNodexn1innls)//遍历
XmlElementxe2=(XmlElement)xn1;
//转换类型
if(xe2.Name=="
)//如果找到
xe2.InnerText="
亚胜"
//则修改
break;
//找到退出来
}
//保存。
========================删除=========================
XmlNodeListxnl=xmlDoc.SelectSingleNode("
foreach(XmlNodexninxnl)
if(xe.GetAttribute("
fantasy"
)
xe.RemoveAttribute("
//删除genre属性
elseif(xe.GetAttribute("
xe.RemoveAll();
//删除该节点的全部内容
回答三
方法一:
使用XML控件
%@PageLanguage="
C#"
%>
html>
body>
h3>
fontface="
Verdana"
读取XML方法一<
/font>
/h3>
fromrunat=server>
asp:
Xmlid="
xml1"
DocumentSource="
grade.xml"
runat="
server"
/>
/from>
/body>
/html>
方法二:
使用DOM技术
%@ImportNamespace="
System.Xml"
System.Xml.Xsl"
scriptlanguage="
voidPage_Load(Objectsender,EventArgse)
{
XmlDocumentdoc=newXmlDocument();
doc.Load(Server.MapPath("
));
xml1.Document=doc;
}
/script>
读取XML方法二<
方法三:
使用DataSet对象
System.Data"
System.Data.OleDb"
DataSetobjDataSet=newDataSet();
objDataSet.ReadXml(Server.MapPath("
dgEmployees.DataSource=objDataSet.Tables["
student"
].DefaultView;
dgEmployees.DataBind();
读取XML方法三<
DataGridid="
dgEmployees"
方法四:
按文本方式读取
privatevoidPage_Load(Objectsender,EventArgse)
XmlTextReaderobjXMLReader=newXmlTextReader(Server.MapPath("
stringstrNodeResult="
XmlNodeTypeobjNodeType;
while(objXMLReader.Read())
objNodeType=objXMLReader.NodeType;
swith(objNodeType)
caseXmlNodeType.XmlDeclaration:
//读取XML文件头
strNodeResult+="
XMLDeclaration:
b>
+objXMLReader.Name+"
+objXMLReader.Value+"
/b>
br/>
caseXmlNodeType.Element:
//读取标签
Element:
caseXmlNodeType.Text:
//读取值
-Value:
//判断该节点是否有属性
if(objXMLReader.AttributeCount>
0)
{//用循环判断完所有节点
while(objXMLReader.MoveToNextAttibute)
{//取标签和值
-Attribute:
value:
LblFile.Text=strNodeResult;
读取XML方法四<
labelid="
LblFile"
回答四
我用的是一种很笨的方法,但可以帮助初学者了解访问XML节点的过程。
已知有一个XML文件(bookstore.xml)如下:
Corets,
Eva
5.95
1、插入节点
往节点中插入一个节点:
XmlDocument
xmlDoc=new
XmlDocument();
xmlDoc.Load("
bookstore.xml"
XmlNode
root=xmlDoc.SelectSingleNode("
//查找
XmlElement
xe1=xmlDoc.CreateElement("
//创建一个节点
xe1.SetAttribute("
,"
//设置该节点genre属性
//设置该节点ISBN属性
xesub1=xmlDoc.CreateElement("
xesub1.InnerText="
//设置文本节点
xe1.AppendChild(xesub1);
//添加到节点中
xesub2=xmlDoc.CreateElement("
xesub2.InnerText="
xe1.AppendChild(xesub2);
xesub3=xmlDoc.CreateElement("
xesub3.InnerText="
xe1.AppendChild(xesub3);
root.AppendChild(xe1);
xmlDoc.Save("
结果为:
候捷
58.3
2、修改节点:
将genre属性值为“李赞红“的节点的genre值改为“update李赞红”,将该节点的子节点的文本修改为“亚胜”。
XmlNodeList
nodeList=xmlDoc.SelectSingleNode("
//获取bookstore节点的所有子节点
foreach(XmlNode
xn
in
nodeList)//遍历所有子节点
{
xe=(XmlElement)xn;
//将子节点类型转换为XmlElement类型
if(xe.GetAttribute("
)=="
)//如果genre属性值为“李赞红”
xe.SetAttribute("
//则修改该属性为“update李赞红”
nls=xe.ChildNodes;
//继续获取xe子节点的所有子节点
xn1
nls)//遍历
xe2=(XmlElement)xn1;
//转换类型
if(xe2.Name=="
)//如果找到
xe2.InnerText="
//则修改
break;
//找到退出来就可以了
}
最后结果为:
亚胜
3、删除节点
节点的genre属性,删除
节点。
xnl=xmlDoc.SelectSingleNode("
xnl)
)
xe.RemoveAttribute("
//删除genre属性
else
xe.RemoveAll();
//删除该节点的全部内容
4、显示所有数据。
xn=xmlDoc.SelectSingleNode("
xnl=xn.ChildNodes;
xnf
xe=(XmlElement)xnf;
Console.WriteLine(xe.GetAttribute("
//显示属性值
xnf1=xe.ChildNodes;
xn2
xnf1)
Console.WriteLine(xn2.InnerText);
//显示子节点点文本
loading...
2005-10-3
一个通过DataSet操作XML的类(源代码)
using
System;
System.Data;
System.Xml;
System.Windows.Forms;
//***************************************
//
作者:
∮明天去要饭
QICQ:
305725744
.Net群:
6370988
namespace
YSTRP.Common
///
OperateXmlByDataSet
的摘要说明。
public
class
OperateXmlByDataSet()
TODO:
在此处添加构造函数逻辑
#region
GetDataSetByXml
读取xml直接返回DataSet
xml文件相对路径
static
DataSet
GetDataSetByXml(string
strXmlPath)
try
ds
=
new
DataSet();
ds.ReadXml(GetXmlFullPath(strXmlPath));
if(ds.Tables.Count
0)
return
ds;
null;
catch(Exception
ex)
System.Windows.Forms.MessageBox.Show(ex.ToString());
#endregion
GetDataViewByXml
读取Xml返回一个经排序或筛选后的DataView
筛选条件,如:
name
'kgdiwss'"
排序条件,如:
Id
desc"
DataView
GetDataViewByXml(string
strXmlPa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# XML 完整 操作