用C#读写XML文件

问题描述

1.用C#读写XML文件2.将XML文件显示在文字框或者表格中求代码,讲解···

解决方案

解决方案二:

解决方案三:

谢谢····段子鹏
解决方案四:

不是用linq,是C#···
解决方案五:

读///<summary>///根据节点名称读取PersonalAccountSettings.xml中节点的InnerText值///</summary>///<paramname="nodeName">节点名称</param>///<returns>节点值</returns>publicstaticstringGetPersonalSettings(stringnodeName){stringnodeText=String.Empty;try{XmlDocumentxmlDoc=newXmlDocument();xmlDoc.Load(System.Windows.Forms.Application.StartupPath+"\Configuration\PersonalAccountSettings.xml");XmlNodexn=xmlDoc.SelectSingleNode("root//"+nodeName+"");nodeText=xn.InnerText;}catch{}returnnodeText;}

写///<summary>///根据节点名称设置PersonalAccountSettings.xml中节点的值///</summary>///<paramname="nodeName">节点名称</param>///<paramname="nodeValue">节点值</param>publicstaticvoidSetPersonalSettings(stringnodeName,stringnodeValue){try{XmlDocumentxmlDoc=newXmlDocument();xmlDoc.Load(System.Windows.Forms.Application.StartupPath+"\Configuration\PersonalAccountSettings.xml");XmlNodexn=xmlDoc.SelectSingleNode("root//"+nodeName+"");XmlNoderoot=xmlDoc.SelectSingleNode("root");//查找根节点if(null==xn){XmlElementelement=xmlDoc.CreateElement(nodeName);element.InnerText=nodeValue;root.AppendChild(element);}else{xn.InnerText=nodeValue;}xmlDoc.Save(System.Windows.Forms.Application.StartupPath+"\Configuration\PersonalAccountSettings.xml");}catch{}}

解决方案六:

引用3楼X_HanGIS的回复:

不是用linq,是C#···

linq只是一种解决方式么,可以自己百度百度常规的方法
解决方案七:

<?xmlversion="1.0"encoding="utf-8"?><root><LastLoginAccount>0002</LastLoginAccount></root>

解决方案八:

引用3楼X_HanGIS的回复:

不是用linq,是C#···

呀,你怎么把人家的名字给敲出来了。
解决方案九:

真名吗?Sorry~~~
解决方案十:

msdn看看,或者找本入门书看看。
解决方案十一:

用linqtoxml操作XML文件很方便的啊
解决方案十二:

引用8楼X_HanGIS的回复:

真名吗?Sorry~~~

C#仓井空
解决方案十三:

楼主这头像是楼主自己还是GF
解决方案十四:

解决方案十五:

<?xmlversion="1.0"encoding="utf-8"?><Base><Continentname="亚洲"><Countryname="中国"></Country><Countryname="日本"></Country></Continent><Continentname="欧洲"><Countryname="法国"></Country></Continent><Continentname="非洲"></Continent></Base>DataSetds=newDataSet();ds.ReadXml("test.xml");strings=ds.Tables[0].Rows[0][1].ToString();//亚洲strings1=ds.Tables[0].Rows[1][1].ToString();//欧洲strings2=ds.Tables[0].Rows[2][1].ToString();//非洲stringss=ds.Tables[1].Rows[0][0].ToString();//中国stringss1=ds.Tables[1].Rows[1][0].ToString();//日本stringss2=ds.Tables[1].Rows[2][0].ToString();//法国
解决方案:谢谢大神们···百忙之中能帮我!
解决方案:C#读写XML文件示例//读取XML文件数据//调用公共类中的GetData方法,读取XML文件中的数据privateobjectGetData(DataTabledt,stringsColumnName,stringdColumnName,stringsValue){DataRow[]rows=dt.Select(sColumnName+"='"+sValue+"'");if(rows.Length<=0)returnnull;returnrows[0][dColumnName];}//codego.net/tags/23/1///调用公共类GetData显示数据publicstaticDataTableGetData(stringpath,stringtableName,paramsXmlParamter[]param){//创建XmlDocument类的实例XmlDocumentxmldoc=newXmlDocument();//调用XmlDocument类中的Load()方法加载XML文件xmldoc.Load(path);//创建DataTable类型的变量dtDataTabledt=newDataTable();///获取根节点XmlNoderootNode=xmldoc.SelectSingleNode("/"+tableName+"s");//判断节点及其子节点是否为空,为空将返空值if(rootNode==null)returnnull;if(rootNode.ChildNodes.Count==0)returnnull;///创建保存记录的数据列foreach(XmlAttributeattrinrootNode.ChildNodes[0].Attributes){dt.Columns.Add(newDataColumn(attr.Name,typeof(string)));}///创建获取数据节点的XPathstringxmlPath="/"+tableName+"s/"+tableName;intoperationCount=0;StringBuilderoperation=newStringBuilder();foreach(XmlParamterpinparam){if(p.Direction==ParameterDirection.Insert||p.Direction==ParameterDirection.Update){continue;}///创建条件表达式switch(p.Direction){caseParameterDirection.Equal:operation.Append("@"+p.Name+"='"+p.Value+"'");break;caseParameterDirection.NotEqual:operation.Append("@"+p.Name+"<>'"+p.Value+"'");break;caseParameterDirection.Little:operation.Append("@"+p.Name+"<'"+p.Value+"'");break;caseParameterDirection.Great:operation.Append("@"+p.Name+">'"+p.Value+"'");break;caseParameterDirection.Like:operation.Append("contains(@"+p.Name+",'"+p.Value+"')");break;default:break;}operationCount++;operation.Append("and");}if(operationCount>0){///修正XPathoperation.Remove(operation.Length-5,5);xmlPath+="["+operation.ToString()+"]";}//获取XML节点下的所有节点XmlNodeListnodeList=xmldoc.SelectNodes(xmlPath);///遍历所有节点,并添加节点的数据foreach(XmlNodenodeinnodeList){DataRowrow=dt.NewRow();foreach(DataColumncolumnindt.Columns){///读取每一个属性row[column.ColumnName]=node.Attributes[column.ColumnName].Value;}dt.Rows.Add(row);}returndt;}//向XML文件写入数据publicintAddTitle(stringname,stringbody,intuserID,intboardID,bytestate){XmlParamter[]param={XmlDatabase.CreateInsertParameter("Name",name),XmlDatabase.CreateInsertParameter("Body",body),XmlDatabase.CreateInsertParameter("UserID",userID.ToString()),XmlDatabase.CreateInsertParameter("BoardID",boardID.ToString()),XmlDatabase.CreateInsertParameter("CreateDate",DateTime.Now.ToShortDateString()),XmlDatabase.CreateInsertParameter("VisitNum","0"),XmlDatabase.CreateInsertParameter("ReplyNum","0"),XmlDatabase.CreateInsertParameter("State",state.ToString())};//调用公共类中的AddXmlData向XML数据库中添加数据return(XmlDatabase.AddXmlData(XmlBBS.TitleFilePath,TitleTableName,param));}//添加数据publicstaticintAddXmlData(stringpath,stringtableName,paramsXmlParamter[]param){//创建XmlDocument类的实例XmlDocumentxmldoc=newXmlDocument();//调用XmlDocument类中的Load()方法加载XML文件xmldoc.Load(path);///选择根节点XmlNodenode=xmldoc.SelectSingleNode("/"+tableName+"s");if(node==null)return-1;///创建新记录的ID值intnewID;if(node.LastChild==null){newID=1;}else{newID=DataTypeConvert.ConvertToInt(node.LastChild.Attributes["ID"].Value)+1;}if(newID<1)return-1;///创建一个新节点XmlNodenewNode=xmldoc.CreateNode(XmlNodeType.Element,tableName,null);if(newNode==null)return-1;///添加ID的值newNode.Attributes.Append(CreateNodeAttribute(xmldoc,"ID",newID.ToString()));///添加新节点的属性foreach(XmlParamterpinparam){newNode.Attributes.Append(CreateNodeAttribute(xmldoc,p.Name,p.Value));}///将新节点追加到根节点中node.AppendChild(newNode);//保存XML文档xmldoc.Save(path);returnnewID;}

时间: 2024-09-26 02:23:09

用C#读写XML文件的相关文章

读写xml文件的2个小函数

xml|函数 #region 读写xml文件的2个小函数,2005 4 2 by hyc  public void SetXmlFileValue(string xmlPath,string AppKey,string AppValue)//写xmlPath是文件路径+文件名,AppKey是 Key Name,AppValue是Value  {   XmlDocument xDoc = new XmlDocument();   xDoc.Load(xmlPath);   XmlNode xNod

Vc 读写xml文件二个实例

vc 读写xml文件二个实例 <?xml version="1.0" encoding="gb2312"?>   <root> <device id="10041" name="设备1">   <type>13 </type>   <typename>保护 </typename>   </device>  </root>

读写xml文件的2个小函数_XML示例

要利用DOM 来存取XML 文件,你必须将XML 文件连结到HTML 网页上. #region 读写xml文件的2个小函数,2005 4 2 by hyc  public void SetXmlFileValue(string xmlPath,string AppKey,string AppValue)//写xmlPath是文件路径+文件名,AppKey是 Key Name,AppValue是Value { XmlDocument xDoc = new XmlDocument(); xDoc.L

java学习:使用dom4j读写xml文件

dom4j是一个优秀的开源项目,专用于xml文件的读写,而且支持强大的xpath. 下面的代码演示了对xml文件demo.xml的读写 demo.xml内容: 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <address-list> 3 <card name="yangjm" id="1"> 4 <sex>男</sex> 5

C#写一个读写XML文件的程序

问题描述 写一程序可以修改写入读取XML文件的程序 解决方案 解决方案二:学习一下:解决方案三: 解决方案四:XDocument,XmlDocument,XmlSerializer都可以,看需求了.解决方案五://利用递归获取xml的所有节点(元素也是节点)publicvoidRecurseXml(XmlNoderoot,intindex){if(root==null){return;}if(rootisXmlElement){tbxContent.Text+=root.Name.PadLeft

C#读写xml文件

xml 已知有一个XML文件(bookstore.xml)如下:<?xml version="1.0" encoding="gb2312"?><bookstore>  <book genre="fantasy" ISBN="2-3631-4">    <title>Oberon's Legacy</title>    <author>Corets, Eva

PHP读写XML文件技巧

 常用 如下 几行: header("content-type:text/html; charset=utf-8"); //指定PHP使用UTF-8编码 $xml = simplexml_load_file("example.xml"); //读取xml文件 $newxml = $xml->asXML(); //标准化$xml $fp = fopen("newxml.xml", "w"); //新建xml文件 fwrit

Android开发8——利用pull解析器读写XML文件

  一.基本介绍 对XML解析有SAX和DOM等多种方式,Android中极力推荐xmlpull方式解析xml.xmlpull不仅可用在Android上同样也适用于javase,但在javase环境中需自己获取xmlpull所依赖的类库,kxml2-2.3.0.jar,xmlpull_1_1_3_4c.jar.   jar包下载网址http://www.xmlpull.org/http://kxml.sourceforge.net/   二.例子 读取到xml的声明返回数字0 START_DOC

Linux Shell脚本读写XML文件

在Linux下如何用Shell脚本读写XML?现有一个config.xml <?xml version="1.0" encoding="UTF-8"?><config>   <server-ip>192.168.1.45</server-ip>   <server-port>1209</server-port>   <repository-temp-path>/home/john&l