xml文档操作C#objXmlDoc.AppendChild(objXmlDoc.CreateXmlDeclaration( 1.0,utf-8 ,null));//置xml的版本格式信息objXmlDoc.AppendChild(objXmlDoc.CreateElement( , sRoot, ));//建根元素objXmlDoc.Save(XmlFile);//保存else//否 文件是否存在 不存在 建if(!(File.Exists(XmlFile)))objXmlDoc.AppendChild(objXmlDoc.CreateXmlDeclaration( 1.0,utf-8,null));objXmlDoc.AppendChild(objXmlDoc.CreateElement( , sRoot, ));objXmlDoc.Save(XmlFile);objXmlDoc.Load(XmlFile);catch(System.Exception ex)throw ex;strXmlFile=XmlFile;
///param name=XmlPathNode xPath /param
///returns有数据返回DataView 否返回null/returnspublic DataView GetData(string XmlPathNode)
//找数据。返回一个D ataVi ew
DataSet ds=new DataSet();try
StringReader read = newStringReader(objXmlDoc.SelectSingleNode(XmlPathNode).OuterXml);ds.ReadXml(read);
return ds.Tables[0].DefaultView;c atch
//throw;return null;
///summary
///更新点内容
////summary
///param name=xmlPathNode/param
///param name=content/parampublic void UpdateNode(string xmlPathNode, string content)objXmlDoc.SelectSingleNode(xmlPathNode).InnerText=content;
///summary
///更新点的某个属性
////summary
///param name=xmlPathNode要操作的点/param
///p aram name=AttribName属性名/p aram
///param name=AttribValue属性 /parampublic void UpdateNode(string xmlPathNode, string AttribName, string AttribValue)
((XmlElement)(objXmlDoc.SelectSingleNode(xmlPathNode))).SetAttribute(AttribName,AttribValue);
///param name=xmlPathNode要操作点的xpath句/param
///p aram name=arrAttribName属性名称字符串数 /p aram
///p aram name=arrAttrib Content属性内容字符串数 /param
///param name=content 点内容/parampublic void UpdateNode(string xmlPathNode, string[] arrAttribName, string[] arrAttribContent,string content)
XmlNode xn=objXmlDoc.SelectSingleNode(xmlPathNode);if(xn!=null)xn.InnerText=content;xn.Attributes.RemoveAll();for(int i=0; i=arrAttribName.GetUpperB ound(0); i++)
((XmlElement)(xn)).S etAttribute(arrAttribName[i],arrAttrib C ontent[i]);
///summary
///移除定点集的所有属性
////summary
///param name=xmlPathNode/parampublic void RemoveAllAttribute(string xmlPathNode)
XmlNodeList xnl=objXmlDoc.SelectNodes(xmlPathNode);foreach(XmlNode xn in xnl)xn.Attributes.RemoveAll();string mainNode=Node.Substring(0,Node.LastIndexOf(/));objXmlDoc.SelectSingleNode(mainNode).RemoveChild(objXmlDoc.SelectSingleNode(Node));c atch
//throw;
r e turn;public void InsertNodeWithChild(string mainNode, string ChildNode, string Element, stringContent)
//插入一点和此点的一子点。
XmlNode objRootNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement obj ChildNode=objXmlDoc.CreateElement(ChildNode);objRootNode.AppendChild(obj ChildNode);//插入点
XmlElement objElement=objXmlDoc.CreateElement(Element);obj Element.InnerText=Content;obj ChildNode.AppendChild(objElement);//插入子点
///summary
///插入一个点 一个Attribute和innerText
////summary
///param name=mainNode/param
///param name=Element 点名称/param
///p aram name=Attrib Attribute名称/param
///param name=Attrib Content Attribute /param
///param name=Content innerText /parampublic void InsertNode(string mainNode, string Element, string Attrib, string AttribContent,string Content)
XmlNode objNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement objElement=objXmlDoc.CreateElement(Element);obj Element.S etAttribute(Attrib,Attrib Content);
obj Element.InnerText=Content;objNode.AppendChild(objElement);
///summary
///插入一个点 一个Attrib ute
////summary
///param name=mainNode/param
///param name=Element 点名称/param
///p aram name=Attrib Attribute名称/param
///param name=Attrib Content Attribute /parampublic void InsertNode(string mainNode, string Element, string Attrib, string AttribContent)XmlNode objNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement objElement=objXmlDoc.CreateElement(Element);obj Element.S etAttribute(Attrib,Attrib Content);objNode.AppendChild(objElement);
///param name=Element 点名称/parampublic void InsertNode(string mainNode, string Element)
XmlNode objNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement objElement=objXmlDoc.CreateElement(Element);objNode.AppendChild(objElement);
///summarypublic void InsertNode(string mainNode, string elementName, string[] arrAttributeName,
string[]arrAttributeContent, string elementContent)try
XmlNode objNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement objElement=objXmlDoc.CreateElement(elementName);for(int i=0; i=arrAttributeName.GetUpperB ound(0); i++)obj Element.S etAttribute(arrAttributeName[i],arrAttribute C ontent[i]);obj Element.InnerText=elementContent;objNode.AppendChild(objElement);c atchthrow;
//string t=mainNode;
//;
///summary
///插入一个点 多个属性
////summarypublic void InsertNode(string mainNode, string elementName, string[] arrAttributeName,string[]arrAttribute Content)try
XmlNode objNode=objXmlDoc.SelectSingleNode(mainNode);
XmlElement objElement=objXmlDoc.CreateElement(elementName);for(int i=0; i=arrAttributeName.GetUpperB ound(0); i++)obj Element.S etAttribute(arrAttributeName[i],arrAttribute C ontent[i]);
//obj Element.InnerText=elementContent;
objNode.AppendChild(objElement);c atchthrow;
//string t=mainNode;
//;
///summary
///插入子点(多个属性)
////summary
///param name=parentNode要插入的父点/param
///param name=elementName插入的点名称/param
///p aram name=arrAttributeName属性名称[数] /p aram
///p aram name=arrAttribute Content属性内容[数] /param
///param name=elementContent 点内容/parampublic void AddChildNode(string parentNodePath, string elementName, string[]arrAttributeName, string[]arrAttributeContent, string elementContent)try
XmlNode parentNode=objXmlDoc.SelectSingleNode(parentNodePath);
XmlElement obj ChildElement=objXmlDoc.CreateElement(elementName);for(int i=0; i=arrAttributeName.GetUpperB ound(0); i++)obj ChildElement.S etAttribute(arrAttributeName[i],arrAttribute Content[i]);obj ChildElement.InnerText=elementContent;parentNode.AppendChild(obj ChildElement);
c atchr e turn;
///summary
///插入子点(将内容以CD ata形式写入)
////summary
///param name=parentNode要插入的父点/param
///param name=elementName插入的点名称/param
///param name=elementContent 点内容/parampublic void AddChildNodeCData(string parentNodePath, string elementName, stringelementContent)try
XmlNode parentNode=objXmlDoc.SelectSingleNode(parentNodePath);
XmlElement obj ChildElement=objXmlDoc.CreateElement(elementName);
//写入cData数据
XmlCDataSection xcds=objXmlDoc.CreateCDataSection(elementContent);obj ChildElement.AppendChild(xcds);parentNode.AppendChild(obj ChildElement);c atchr e turn;
///param name=parentNode要插入的父点/param
///param name=elementName插入的点名称/param
///param name=elementContent 点内容/param
public void AddChildNode(string parentNodePath, string elementName, string elementContent)try
XmlNode parentNode=objXmlDoc.SelectSingleNode(parentNodePath);
XmlElement obj ChildElement=objXmlDoc.CreateElement(elementName);obj ChildElement.InnerText=elementContent;parentNode.AppendChild(obj ChildElement);c atchr e turn;
///summary
///根据xp ath 找点
////summary
///p aram name=NodeP ath要找点的xp ath /p aram
///returns找到返回true,否返回true/returnspublic bool FindNode(string NodePath)tryif(objXmlDoc.SelectSingleNode(NodePath) !=null)return true;elsereturn false;c atchreturn false;
用方法
星梦云怎么样?星梦云好不好,资质齐全,IDC/ISP均有,从星梦云这边租的服务器均可以备案,属于一手资源,高防机柜、大带宽、高防IP业务,一手整C IP段,四川电信,星梦云专注四川高防服务器,成都服务器,雅安服务器 。官方网站:点击访问星梦云官网活动方案:1、成都电信年中活动机(封锁UDP,不可解封):机房CPU内存硬盘带宽IP防护流量原价活动价开通方式成都电信优化线路4vCPU4G40G+50...
gigsgigsCloud日本东京软银VPS的大带宽配置有100Mbps、150Mbps和200Mbps三种,三网都走软银直连,售价最低9.8美元/月、年付98美元。gigsgigscloud带宽较大延迟低,联通用户的好选择!Gigsgigscloud 日本软银(BBTEC, SoftBank)线路,在速度/延迟/价格方面,是目前联通用户海外VPS的最佳选择,与美国VPS想比,日本软银VPS延迟更...
金山云618年中促销活动正在进行中!金山云针对企业级新用户优惠力度比普通个人用户优惠力度要大,所以我们也是推荐企业新用户身份购买金山云企业级云服务器,尽量购买3年配置的,而不是限时秒杀活动中1年的机型。企业级用户购买金山云服务器推荐企业专区:云服务器N3 2核4G云服务器,1-5M带宽,827.64元/3年,性价比高,性能稳定!点击进入:金山云618年中促销活动目前,金山云基础型E1云服务器2核4...