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;
用方法
云基成立于2020年,目前主要提供高防海内外独立服务器用户,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)、国内高防服务器(广州移动、北京多线、石家庄BGP、保定联通、扬州BGP、厦门BGP、厦门电信、...
BuyVM 商家算是有一些年头,从早年提供低价便宜VPS主机深受广大网友抢购且也遭到吐槽的是因为审核账户太过于严格。毕竟我们国内的个人注册账户喜欢账户资料乱写,毕竟我们看英文信息有些还是比较难以识别的,于是就注册信息的时候随便打一些字符,这些是不能通过的。前几天,我们可以看到BUYVM商家有新增加迈阿密机房,而且商家有提供大硬盘且不限制流量的VPS主机,深受有一些网友的喜欢。目前,BUYVM商家有...
由于行业需求和自媒体的倾向问题,对于我们个人站长建站的方向还是有一些需要改变的。传统的个人网站建站内容方向可能会因为自媒体的分流导致个人网站很多行业不再成为流量的主导。于是我们很多个人网站都在想办法进行重新更换行业,包括前几天也有和网友在考虑是不是换个其他行业做做。这不有重新注册域名重新更换。鉴于快速上手的考虑还是采用香港服务器,这不腾讯云和阿里云早已不是新账户,考虑到新注册UCLOUD账户还算比...