本文实例讲述了C#针对xml文件转化Dictionary的方法。分享给大家供大家参考。具体实现方法如下:
下面是xml文件:
<?xml version="1.0" encoding="utf-8" ?> <nodes> <国土局> <name>市局国土资源局</name> <code>330</code> <受理 telephone="88205156">萍,倩</受理> <审核 personId="48e1bca3-b0f5d0fec89">友</审核> <审定>123</审定> <BELONGSYSTEM>37001</BELONGSYSTEM> <DEPTID>10080100030</DEPTID> <SERVICECODE>4e58a6f1</SERVICECODE> </国土局> <国土局> <name>县国土资源局</name> <code>3321</code> <受理 telephone="13819655058">晨</受理> <审核 personId="f7351d0f-b197-0a0fc685f3ac">辉</审核> <审定>456</审定> <BELONGSYSTEM>123</BELONGSYSTEM> <DEPTID>00100033</DEPTID> <SERVICECODE> 204cdd0b </SERVICECODE> </国土局> </nodes>
下面是相关的获取方法:
/// <summary> /// 获得受理信息 /// </summary> /// <param name="p_shixianCode">市县编码</param> /// <returns>受理信息</returns> public static Dictionary<string,string> ShouLiInfo(string p_shixianCode) { XDocument xd = null; string xmlPath = "config.xml"; xd = XDocument.Load(xmlPath);//xml存放路径Dictionary<string, string> pDic = new Dictionary<string, string>(); var info = from t in xd.Root.Descendants("国土局").Where(p => p.Element("code").Value == p_shixianCode) select new { name = t.Element("name").Value, code = t.Element("code").Value, shouli = t.Element("受理").Value, telephone = t.Element("受理").Attribute("telephone").Value, shenhe = t.Element("审核").Value, personId = t.Element("审核").Attribute("personId").Value, shending = t.Element("审定").Value, DEPTID = t.Element("DEPTID").Value, BELONGSYSTEM = t.Element("BELONGSYSTEM").Value, SERVICECODE = t.Element("SERVICECODE").Value }; foreach (var item in info) { pDic.Add("name", item.name); pDic.Add("code", item.code); pDic.Add("shouliPerson", item.shouli); pDic.Add("telephone", item.telephone); pDic.Add("shenhePerson", item.shenhe); pDic.Add("shenhepersonId", item.personId); pDic.Add("shendingPerson", item.shending); pDic.Add("DEPTID", item.DEPTID); pDic.Add("BELONGSYSTEM", item.BELONGSYSTEM); pDic.Add("SERVICECODE", item.SERVICECODE); } return pDic; }
就这样啦就可以了,直接调用该方法就可以啦
希望本文所述对大家的C#程序设计有所帮助。