首页 > 其他 > 详细

XML文件标签名一致,而属性值不同,如何遍历取值写法 摘录

时间:2015-11-11 09:54:56      阅读:658      评论:0      收藏:0      [点我收藏+]

http://www.cnblogs.com/anny-1980/articles/1164060.html

 

<EssentialFunctions>
     <Qualification description="We Offer" source="AdDesc1">LOCAL, NON-EXPATRIATE PAY + BENEFITS + ANNUAL LEAVE EMPLOYEE STATUS:REGULAR VISA:SPONSORED*, OVERSEAS CANDIDATES ELIGIBLE TO APPLY AIRFARE:NOT SPONSORED HOUSING:NOT SPONSORED MEDICAL INSURANCE:INCLUDED</Qualification>
     <Qualification description="Roles and Responsibilities" source="AdDesc2">1、 Service business delivery process design and realization 2、 Business process optimization 3、 Document management 4、 External communications</Qualification>
     <Qualification description="Requirements" source="AdDesc3">Minimum requirements: 1. Bachelor’s degree or above with a related major (IT Management, Business Administration , technology etc.) </Qualification>
     <Qualification description="Additional Information" source="AdDesc4">The ultimate interpretation rights of all above belongs to Legend Group HR headquarters. In case there are inconsistencies between the English and the Chinese version, the Chinese language version applies.</Qualification>
     <Qualification source="Language">EN</Qualification>
     <Qualification source="LOV5305" category="Function Area">客户服务</Qualification>
     <Qualification source="LOV5510" category="Location">北京市</Qualification>
</EssentialFunctions>

在C#中如何循环读取属性及内容?
通过node.Attributes["属性名"].Value获取属性值
当作普通节点对待,遍历节点来获取所有节点值.

StringBuilder sb = new StringBuilder();

XmlNode ndQualification = el.SelectSingleNode("JobPositionInformation/JobPositionDescription/EssentialFunctions");
string _attr_source = "";
string _attr_desc = "";
string _attr_category = "";
foreach (XmlNode node in ndQualification.ChildNodes)
{                
      if (!XmlUtility.IsEmpty(node))
      {
             if(node.Attributes["source"] != null)
                   _attr_source = (String.IsNullOrEmpty(node.Attributes["source"].Value))?"":node.Attributes["source"].Value;
             if(node.Attributes["description"] != null)
                  _attr_desc = (String.IsNullOrEmpty(node.Attributes["description"].Value))?"":node.Attributes["description"].Value;
             if(node.Attributes["category"] != null)
                   _attr_category = (String.IsNullOrEmpty(node.Attributes["category"].Value))?"":node.Attributes["category"].Value;
             if(_attr_source.Length > 0)
                  sb.Append(string.Format(" <b>source:</b>{0};", _attr_source));
             if(_attr_desc.Length > 0)
                   sb.Append(string.Format(" <b>description:</b>{0};", _attr_desc));
             if(_attr_category.Length > 0)
                   sb.Append(string.Format(" <b>category:</b>{0};", _attr_category));
             sb.Append("<br>");
             sb.Append(node.InnerText.Trim()); //节点值
             sb.Append("<br><br>");

             _attr_source = "";
             _attr_desc = "";
             _attr_category = "";
        }
}
         
 return sb.ToString();

XML文件标签名一致,而属性值不同,如何遍历取值写法 摘录

原文:http://www.cnblogs.com/shy1766IT/p/4955166.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!