Пример #1
0
 /// <summary>
 /// 寻找子节点集合
 /// </summary>
 /// <param name="xpath"></param>
 /// <returns></returns>
 public XmlNodeList FindChildNodes(string xpath)
 {
     if (string.IsNullOrEmpty(xpath))
     {
         return(XMLReader.FindChildNodes(root));
     }
     else
     {
         var _item = XMLReader.FindNode(root, xpath);
         if (_item == null)
         {
             return(null);
         }
         return(XMLReader.FindChildNodes(_item));
     }
 }
Пример #2
0
        /// <summary>
        /// 查询下属节点的value值
        /// </summary>
        /// <param name="prefix">指定节点</param>
        /// <param name="xpath">路劲</param>
        /// <returns>value值集合</returns>
        public static String[] FindSubNodeValues(XmlNode prefix, String xpath)
        {
            String[] result = null;

            int         lastIndex = xpath.LastIndexOf('/');
            string      strTemp   = xpath.Substring(0, lastIndex);
            XmlNodeList nodeList  = FindNodes(prefix, strTemp);

            if (nodeList != null)
            {
                result = new String[nodeList.Count];
                for (int i = 0; i < nodeList.Count; i++)
                {
                    XmlNode node = nodeList.Item(i);

                    string strSubPath = "." + xpath.Substring(lastIndex, xpath.Length - lastIndex);
                    result[i] = XMLReader.FindValue(node, strSubPath);
                }
            }
            return(result);
        }
Пример #3
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 ///   查找的起始节点为document的根节点,同时返回该节点所包含的所有xml报文内容
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <returns>节点所包含的所有xml报文内容</returns>
 public string FindXmlContents(string xpath)
 {
     return(XMLReader.FindXmlContents(root, xpath));
 }
Пример #4
0
 /// <summary>
 /// 采用xpath查询语句查找相应的一组节点, 查找的起始节点为document的根节点,
 /// 并将这一组节点的文本值作为一个字符串数组一起返回
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <returns>文本值数组</returns>
 public String[] FindSubNodeValues(String xpath)
 {
     return(XMLReader.FindSubNodeValues(root, xpath));
 }
Пример #5
0
 /// <summary>
 /// 采用xpath查询语句查找相应的一组节点, 查找的起始节点为document的根节点,
 /// 并将这一组节点的文本值作为一个字符串数组一起返回
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <returns>文本值数组</returns>
 public string[] FindValues(string xpath)
 {
     return(XMLReader.FindValues(root, xpath));
 }
Пример #6
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 ///  查找的起始节点为document的根节点,并将该节点的文本值转换为DateTime型数据返回,
 ///  如文本值无法转换成DateTime,则返回指定的默认值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="defaultValue">默认值</param>
 /// <returns>将该节点的文本值转换为DateTime型数据返回,如文本值无法转换成DateTime,则返回指定的默认值</returns>
 public DateTime FindValueAsDatetime(string xpath, DateTime defaultValue)
 {
     return(XMLReader.FindValueAsDatetime(root, xpath, defaultValue));
 }
Пример #7
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 ///  查找的起始节点为document的根节点,并将该节点的文本值转换为bool型数据返回,
 ///  如文本值无法转换成bool,则返回指定的默认值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="defaultValue">默认值</param>
 /// <returns>将该节点的文本值转换为bool型数据返回,如文本值无法转换成bool,则返回指定的默认值</returns>
 public bool FindValueAsBool(string xpath, bool defaultValue)
 {
     return(XMLReader.FindValueAsBool(root, xpath, defaultValue));
 }
Пример #8
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 ///  查找的起始节点为document的根节点,并将该节点的文本值转换为double型数据返回,
 ///  如文本值无法转换成double,则返回指定的默认值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="defaultValue">默认值</param>
 /// <returns>将该节点的文本值转换为double型数据返回,如文本值无法转换成int,则返回指定的默认值</returns>
 public double FindValueAsDouble(string xpath, double defaultValue)
 {
     return(XMLReader.FindValueAsDouble(root, xpath, defaultValue));
 }
Пример #9
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 ///  查找的起始节点为document的根节点,并将该节点的文本值转换为int型数据返回,
 ///  如文本值无法转换成int,则返回指定的默认值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="defaultValue">默认值</param>
 /// <returns>将该节点的文本值转换为int型数据返回,如文本值无法转换成int,则返回指定的默认值</returns>
 public int FindValueAsInt(string xpath, int defaultValue)
 {
     return(XMLReader.FindValueAsInt(root, xpath, defaultValue));
 }
Пример #10
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点),
 /// 查找的起始节点为document的根节点,并返回该节点的文本值,如文本值为空,
 /// 则返回指定的默认值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="defaultValue">默认值</param>
 /// <returns>该节点的文本值,如文本值为空,则返回指定的默认值</returns>
 public string FindValue(string xpath, string defaultValue)
 {
     return(XMLReader.FindValue(root, xpath, defaultValue));
 }
Пример #11
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点), 查找的起始节点为document的根节点,并返回该节点的文本值
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <param name="HasCDATA">是否包含CDATA符</param>
 /// <returns>查找到的节点对象的文本值</returns>
 public string FindValue(string xpath, bool HasCDATA = false)
 {
     return(XMLReader.FindValue(root, xpath, HasCDATA));
 }
Пример #12
0
 /// <summary>
 /// 采用xpath查询语句查找相应的一组节点, 查找的起始节点为document的根节点
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <returns>查找到的一组节点对象</returns>
 public XmlNodeList FindNodes(string xpath)
 {
     return(XMLReader.FindNodes(root, xpath));
 }
Пример #13
0
 /// <summary>
 /// 采用xpath查询语句查找相应节点(与查询语句匹配的第一个节点), 查找的起始节点为document的根节点
 /// </summary>
 /// <param name="xpath">xpath查询语句,参见微软帮助</param>
 /// <returns>查找到的节点对象</returns>
 public XmlNode FindNode(string xpath)
 {
     return(XMLReader.FindNode(root, xpath));
 }