xml字符串反序列化


返回单个字符串

        static void Main(string[] args)
        {
            string xmlStr = xmlStr = "fa141ca8-4ab7-48f0-8f39-d04b32b98273";
            ArrayOfString obj = DeserialiZe(xmlStr);
            Console.ReadKey();
        }
        /// 
        /// xml反序列化
        /// 
        /// 
        /// 
        /// 
        public static T DeserialiZe(string xml)
        {
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
            StringReader reader = new StringReader(xml);
            T result = (T)(xmlSerializer.Deserialize(reader));
            reader.Close();
            reader.Dispose();
            return result;
        }
    //新建类
    public class ArrayOfString
    {
        public string @string { get; set; }
    }

返回字符串数组

        /// 
        /// 解析xml
        /// 
        /// xml字符串
        /// 字符串数组
        public static List getXmlValue(string xml)
        {
            List result = new List();
            XDocument xdoc = XDocument.Parse(xml); //加载xml
            List eles = new List(); //获取符合条件的节点集合
            //遍历节点,把符合条件的添加到 eles集合
            foreach (XElement i in xdoc.Descendants().Where(e => {
                if (e.Name.LocalName == "string")
                {
                    return true;
                }
                return false;
            }))
            {
                eles.Add(i);
            }
            foreach (XElement item in eles) //遍历查到的数据,输出
            {
                result.Add(item.Value);
            }
            return result;
        }

相关