我有自己的空间啦! 哈哈,好高兴呀.
我找到的XML 操作的代码:
1
using System;2
using System.Data;3
using System.Configuration;4
using System.Linq;5
using System.Web;6
using System.Web.Security;7
using System.Web.UI;8
using System.Web.UI.HtmlControls;9
using System.Web.UI.WebControls;10
using System.Web.UI.WebControls.WebParts;11
using System.Xml.Linq;12
using System.Xml;13
using System.IO;14

15

/**//// <summary>16
/// Summary description for XMLReSovle17
/// </summary>18
public class XMLReSovle19


{20
public XMLReSovle()21

{22
}23
private XmlDocument xmlDoc = new XmlDocument();24
private string xmlFileName = null;25

26
public string FilePath27

{28

set
{ xmlFileName = value; }29
}30
//创建XML操作对象31
public void OpenXML()32

{33
xmlDoc.Load(xmlFileName);34
}35

36

读取指定节点的指定属性值#region 读取指定节点的指定属性值37

/**//// <summary>38
/// 功能:39
/// 读取指定节点的指定属性值40
/// 41
/// 参数:42
/// 参数一:节点名称43
/// 参数二:此节点的属性44
/// </summary>45
/// <param name="strNode"></param>46
/// <param name="strAttribute"></param>47
/// <returns></returns>48
public string GetXmlNodeValue(string strNode, string strAttribute)49

{50
string strReturn = "";51
try52

{53
//根据指定路径获取节点54
XmlNode xmlNode = xmlDoc.SelectSingleNode(strNode);55

56
//获取节点的属性,并循环取出需要的属性值57
XmlAttributeCollection xmlAttr = xmlNode.Attributes;58

59
for (int i = 0; i < xmlAttr.Count; i++)60

{61
if (xmlAttr.Item(i).Name == strAttribute)62
strReturn = xmlAttr.Item(i).Value;63
}64
}65
catch (XmlException xmle)66

{67
throw xmle;68
}69
return strReturn;70
}71
#endregion72

73

读取指定节点的值#region 读取指定节点的值74

/**//// <summary>75
/// 功能:76
/// 读取指定节点的值77
/// 78
/// 参数:79
/// 参数:节点名称80
/// </summary>81
/// <param name="strNode"></param>82
/// <returns></returns>83
public string GetXmlNodeValue(string strNode)84

{85
string strReturn = String.Empty;86
try87

{88
//根据路径获取节点89
XmlNode xmlNode = xmlDoc.SelectSingleNode(strNode);90
strReturn = xmlNode.InnerText;91
}92
catch (XmlException xmle)93

{94
System.Console.WriteLine(xmle.Message);95
}96
return strReturn;97
}98
#endregion99

100

设置节点值#region 设置节点值101

/**//// <summary>102
/// 功能:103
/// 设置节点值104
/// 105
/// 参数:106
/// 参数一:节点的名称107
/// 参数二:节点值108
/// 109
/// </summary>110
/// <param name="strNode"></param>111
/// <param name="newValue"></param>112
public void SetXmlNodeValue(string xmlNodePath, string xmlNodeValue)113

{114
try115

{116
//根据指定路径获取节点117
XmlNode xmlNode = xmlDoc.SelectSingleNode(xmlNodePath);118
//设置节点值119
xmlNode.InnerText = xmlNodeValue;120
}121
catch (XmlException xmle)122

{123
throw xmle;124
}125
}126
#endregion127

128

设置节点的属性值#region 设置节点的属性值129

/**//// <summary>130
/// 功能:131
/// 设置节点的属性值132
/// 133
/// 参数:134
/// 参数一:节点名称135
/// 参数二:属性名称136
/// 参数三:属性值137
/// 138
/// </summary>139
/// <param name="xmlNodePath"></param>140
/// <param name="xmlNodeAttribute"></param>141
/// <param name="xmlNodeAttributeValue"></param>142
public void SetXmlNodeValue(string xmlNodePath, string xmlNodeAttribute, string xmlNodeAttributeValue)143

{144
try145

{146
//根据指定路径获取节点147
XmlNode xmlNode = xmlDoc.SelectSingleNode(xmlNodePath);148

149
//获取节点的属性,并循环取出需要的属性值150
XmlAttributeCollection xmlAttr = xmlNode.Attributes;151
for (int i = 0; i < xmlAttr.Count; i++)152

{153
if (xmlAttr.Item(i).Name == xmlNodeAttribute)154

{155
xmlAttr.Item(i).Value = xmlNodeAttributeValue;156
break;157
}158
}159
}160
catch (XmlException xmle)161

{162
throw xmle;163
}164
}165
#endregion166

167

168

/**//// <summary>169
/// 获取XML文件的根元素170
/// </summary>171
public XmlNode GetXmlRoot()172

{173
return xmlDoc.DocumentElement;174
}175

176

/**//// <summary>177
/// 在根节点下添加父节点178
/// </summary>179
public void AddParentNode(string parentNode)180

{181
XmlNode root = GetXmlRoot();182
XmlNode parentXmlNode = xmlDoc.CreateElement(parentNode);183

184
root.AppendChild(parentXmlNode);185
}186

187

/**//// <summary>188
/// 向一个已经存在的父节点中插入一个子节点189
/// </summary>190
public void AddChildNode(string parentNodePath, string childNodePath)191

{192
XmlNode parentXmlNode = xmlDoc.SelectSingleNode(parentNodePath);193
XmlNode childXmlNode = xmlDoc.CreateElement(childNodePath);194

195
parentXmlNode.AppendChild(childXmlNode);196
}197

198

/**//// <summary>199
/// 向一个节点添加属性200
/// </summary>201
public void AddAttribute(string NodePath, string NodeAttribute)202

{203
XmlAttribute nodeAttribute = xmlDoc.CreateAttribute(NodeAttribute);204
XmlNode nodePath = xmlDoc.SelectSingleNode(NodePath);205
nodePath.Attributes.Append(nodeAttribute);206
}207

208

/**//// <summary>209
/// 删除一个节点的属性210
/// </summary>211
public void DeleteAttribute(string NodePath, string NodeAttribute, string NodeAttributeValue)212

{213
XmlNodeList nodePath = xmlDoc.SelectSingleNode(NodePath).ChildNodes;214

215
foreach (XmlNode xn in nodePath)216

{217
XmlElement xe = (XmlElement)xn;218

219
if (xe.GetAttribute(NodeAttribute) == NodeAttributeValue)220

{221
xe.RemoveAttribute(NodeAttribute);//删除属性222
}223
}224
}225

226

/**//// <summary>227
/// 删除一个节点228
/// </summary>229
/// <param name="tempXmlNode">给定结点</param>230
public void DeleteXmlNode(string tempXmlNode)231

{232
//XmlNodeList xmlNodePath=xmlDoc.SelectSingleNode(tempXmlNode).ChildNodes;233

234
XmlNode xmlNodePath = xmlDoc.SelectSingleNode(tempXmlNode);235
xmlNodePath.ParentNode.RemoveChild(xmlNodePath);236
//foreach(XmlNode xn in xmlNodePath)237
//{238
//XmlElement xe=(XmlElement)xn;239
//xe.RemoveAll();240
//xe.RemoveChild(xn);241

242
//xn.RemoveAll();243

244
//if(xe.HasChildNodes)245
//{246

247
//foreach(XmlNode xn in xe)248
//{249

250
//xn.RemoveAll();//删除所有子节点和属性251
//}252
//}253

254
//}255

256
}257

258

保存XML文件#region 保存XML文件259

/**//// <summary>260
/// 功能: 261
/// 保存XML文件 262
/// </summary>263
public void SaveXmlDocument()264

{265
try266

{267
//保存设置的结果268
xmlDoc.Save(xmlFileName);269
}270
catch (XmlException xmle)271

{272
throw xmle;273
}274
}275
#endregion276

277

保存XML文件#region 保存XML文件278

/**//// <summary>279
/// 功能: 280
/// 保存XML文件281
/// </summary>282
public void SaveXmlDocument(string tempXMLFilePath)283

{284
try285

{286
//保存设置的结果287
xmlDoc.Save(tempXMLFilePath);288
}289
catch (XmlException xmle)290

{291
throw xmle;292
}293
}294
#endregion295

296

创建一个XML 文件#region 创建一个XML 文件297
public bool CreateXMLFile(string xPath)298

{299
FileStream file = new FileStream("~/aaa.xml", FileMode.Create);300
}301
#endregion302
}
大家觉得好的话,就请多多支持呀.哈哈.

浙公网安备 33010602011771号