Linq to Xml遍历

本文介绍了一种从XML文档中提取数值和字符串数据的方法,并通过LINQ to XML的方式进行遍历和转换,最后将获取的数据分别存储到两个列表中,以便于进一步的数据处理或图表绘制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        private void GetAllValues(XElement doc)
        {
            ChartValues = new List<double>();
            ChartKeys = new List<string>();

            var myValues = from pv in doc.Descendants("value")
                           select pv.Value;
            foreach (var v1 in myValues)
                ChartValues.Add(Convert.ToDouble(v1));

            var myKeys = from pn in doc.Descendants("name")
                         //where pn.Value == "方欣科技"
                           select pn.Value;
            foreach (var v1 in myKeys)
                ChartKeys.Add(Convert.ToString(v1));
        }

 

 

调用:

        void ws_GetStockCompleted(object sender, GetStockCompletedEventArgs e)
        {

            if (e.Error == null)
            {
                XElement doc = XElement.Load(new StringReader(e.Result));
                GetAllValues(doc);
               

                //using (XmlReader Reader = XmlReader.Create(new StringReader(e.Result)))
                //{
                //    ChartValues = new List<double>();
                //    ChartKeys = new List<string>();
                //    for (int i = 0; i < 4; i++)
                //    {
                //        //Reader.ReadToFollowing("value");
                //        //ChartValues.Add(Convert.ToInt32(Reader.ReadInnerXml()));
                //        //Reader.ReadToFollowing("name");
                //        //ChartKeys.Add(Reader.ReadElementContentAsString());

                //        Reader.ReadToFollowing("value");
                //        ChartValues.Add(Reader.ReadElementContentAsDouble());

                //        //Stock1.Text += ChartValues[i] + "-";
                //    }
                //}
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值