web前端

位置:IT落伍者 >> web前端 >> 浏览文章

读写xml个人小结


发布日期:2022年05月16日
 
读写xml个人小结

//打开某文件(假设nfig在根目录中)

stringfilename=ServerMapPath(/)+@WebApplication\nfig;

XmlDocumentxmldoc=newXmlDocument();

xmldocLoad(filename);

//得到顶层节点列表

XmlNodeListtopM=xmldocDocumentElementChildNodes;

foreach(XmlElementelementintopM)

{

if(elementNameToLower()==appsettings)

{

//得到该节点的子节点

XmlNodeListnodelist=elementChildNodes;

if(nodelistCount>)

{

//DropDownListItemsClear();

foreach(XmlElementelinnodelist)//读元素值

{

//DropDownListItemsAdd(elAttributes[key]InnerXml);

//thisTextBoxText=elAttributes[key]InnerText;

thisTextBoxText=elAttributes[key]Value;

thisLabelText=elAttributes[value]Value;

//同样在这里可以修改元素值在后面save

//elAttributes[value]Value=thisTextBoxText;

}

}

}

}

xmldocSave(filename);

在某节点下增加一个元素并设置值

if(elementNameToLower()==appsettings)

{

XmlElementelem=xmldocCreateElement(add);

elementAppendChild(elem);

elemInnerText=ltp;

xmldocSave(filename);

}

效果

<appSettings>

<addkey=密码value=admin/>

<add>ltp</add>

</appSettings>

在某节点下增加一个元素并增加两个属性

if(elementNameToLower()==appsettings)

{

XmlElementelem=xmldocCreateElement(add);

elementAppendChild(elem);

XmlAttributexa=xmldocCreateAttribute(key);

xaValue=ltp;

XmlAttributexa=xmldocCreateAttribute(value);

xaValue=first;

elemSetAttributeNode(xa);

elemSetAttributeNode(xa);

xmldocSave(filename);

}

效果

<appSettings>

<addkey=密码value=admin/>

<addkey=ltpvalue=first/>

</appSettings>

//添加空元素

XmlNodenode=docCreateElement(groupname);

nodeInnerText=;

docLastChildAppendChild(node);

docSave(xmlfile);

删除一个节点元素

stringitemname=thislistBoxSelectedItemToString();

thislistBoxItemsRemove(thislistBoxSelectedItem);

//begindelxmlfile

XmlDocumentdoc=newXmlDocument();

docLoad(xmlfile);

XmlNodeListtopM=docDocumentElementChildNodes;

foreach(XmlElementelementintopM)

{

if(elementName==boBoxText)

{

//得到该节点的子节点

XmlNodeListnodelist=elementChildNodes;

foreach(XmlElementelinnodelist)//读元素值

{

if(elAttributes[key]Value==itemname)

{

elementRemoveChild(el);

}

}//循环元素

}//得到组

}//循环组

docSave(xmlfile);//一定要保存一下否则不起作用

//筛选数据

privatevoidReader_Xml(stringpathFlie)

{

XmlDocumentXmldoc=newXmlDocument();

XmldocLoad(pathFlie);

XmlNodeListRecord=XmldocDocumentElementSelectNodes(Code[@id=])

intf=;

foreach(XmlNodexnodeinRecord)

{

}

}

读取xml节点的数据总结

/*读取xml数据两种xml方式*/

<aaa>

<bb>something</bb>

<cc>something</cc>

</aaa>

<aaa>

<addkey=value=/>

</aaa>

/*第一种方法*/

DSReadXml(yourxmlfilename);

ContainerDataItem(bb);

ContainerDataItem(cc);

DSReadXmlSchema(yourxmlfilename);

/*第二种方法*/

<aaa>

<addkey=value=/>

</aaa>

如果我要找到然后取到应该怎么写呢?

usingSystemXML;

XmlDataDocumentxmlDoc=newSystemXmlXmlDataDocument();

xmlDocLoad(@c:\Configxml);

XmlElementelem=xmlDocGetElementById(add);

stringstr=elemAttributes[value]Value

/*第三种方法:SelectSingleNode读取两种格式的xml*/

<?xmlversion=encoding=utf?>

<configuration>

<appSettings>

<ConnectionString>DataSource=yf;userid=ctm_dbo;password=</ConnectionString>

</appSettings>

</configuration>

XmlDocumentdoc=newXmlDocument();

docLoad(strXmlName);

XmlNodenode=docSelectSingleNode(/configuration/appSettings/ConnectionString);

if(node!=null)

{

stringk=nodeValue;//null

stringk=nodeInnerText;//DataSource=yf;userid=ctm_dbo;password=

stringk=nodeInnerXml;//DataSource=yf;userid=ctm_dbo;password=

node=null;

}

********************************************************************

<?xmlversion=encoding=utf?>

<configuration>

<appSettings>

<addkey=ConnectionStringvalue=DataSource=yf;userid=ctm_dbo;password=/>

</appSettings>

</configuration>

****

XmlNodenode=docSelectSingleNode(/configuration/appSettings/add);

if(node!=null)

{

stringk=nodeAttributes[key]Value;

stringv=nodeAttributes[value]Value;

node=null;

}

**

XmlNodenode=docSelectSingleNode(/configuration/appSettings/add);

if(node!=null)

{

XmlNodeReadernr=newXmlNodeReader(node);

nrMoveToContent();

//检查当前节点是否是内容节点如果此节点不是内容节点则读取器向前跳至下一个内容节点或文件结尾

nrMoveToAttribute(value);

strings=nrValue;

node=null;

}               

上一篇:XML数据进行加密和大小写转换

下一篇:eWebEditor v3.8 列目录