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

 

     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
     1、 Service business delivery process design and realization 2、 Business process optimization 3、 Document management 4、 External communications
     Minimum requirements: 1. Bachelor’s degree or above with a related major (IT Management, Business Administration , technology etc.) 
     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.
     EN
     客户服务
     北京市


在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(" source:{0};", _attr_source));
             if(_attr_desc.Length > 0)
                   sb.Append(string.Format(" description:{0};", _attr_desc));
             if(_attr_category.Length > 0)
                   sb.Append(string.Format(" category:{0};", _attr_category));
             sb.Append("
");

             sb.Append(node.InnerText.Trim()); //节点值
             sb.Append("

");

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

你可能感兴趣的:(XML文件标签名一致,而属性值不同,如何遍历取值写法 摘录)