xml的简单读写应用

来源:互联网 发布:淘宝店家培训 编辑:程序博客网 时间:2024/05/21 17:53

1、在数据保存中之前使用到了.ini文件,今天会使用到.xml文件,.xml文件的应用比.ini文件的应用更为广泛,功能也更加强大。后续将会持续学习这一块。


2、首先看两个函数

//创建.xml文件的方法

 private void CreateXML()
        {
            XmlTextWriter write = new XmlTextWriter("Data.xml",null);//实例化一个写XML对象
            write.Formatting = Formatting.Indented;//设置缩进
            write.WriteStartElement("相机参数");//写入根元素
            write.WriteStartElement("参数设置");

            write.WriteAttributeString("相机名称", "mindvision"); ;//写入属性以及属性的数据
            write.WriteAttributeString("生产日期","2017年");
           
            write.WriteElementString("grab_timeout", "5000");//写入子元素
            write.WriteElementString ("brightness", "10000");
            write.WriteElementString("contrast", "100");

            write.WriteEndElement();//写入结束标签
            write.WriteEndElement();

            write.Close();//关闭XML文件
        }


3、

//读取.xml文件的操作

private void ReadXML()
        {
            XmlDocument xmlDoc = new XmlDocument();
            xmlDoc.Load("Data.xml");
            XmlNode xn = xmlDoc.SelectSingleNode("相机参数");//获取文件中第一个子节点xn
           
            XmlNodeList xnl = xn.ChildNodes;//获取第一个节点的所有节点xnl
            foreach(XmlNode xnf in xnl)
            {
                XmlElement xe = (XmlElement)xnf;
                listBox1.Items.Add("相机名称" + xe.GetAttribute("相机名称"));
                 listBox1.Items.Add("生产日期"+xe.GetAttribute("生产日期"));
                XmlNodeList xnf1 = xe.ChildNodes;
                foreach (XmlNode xn2 in xnf1)
                {
                    listBox1.Items.Add(  xn2.FirstChild.Value);
                   // listBox1.Items.Add("brightness" + xn2.FirstChild.Attributes["brightness"].Value);//还有问题待解决
                   // listBox1.Items.Add("contrast" + xn2.FirstChild.Attributes["contrast"].Value);//还有问题待解决
                }
            }      
        }

在读取函数中,还有些小问题。不能具体的访问某一个子元素,只能返回根节点下的所有元素。后续将持续解决,持续学习更新blog。


读取的数据在listbox中显示。

0 0
原创粉丝点击