C# XML读写代码

主要为替代INI的读写,此示例为保存datagridview的columns的部分设置
XML文件格式为:
<?xml version="1.0" encoding="utf-8"?>
<Columns>
  <Columns0 Index="0" Visiable="False" HeadText="ID" Width="100" />
  <Columns1 Index="1" Visiable="True" HeadText="年份" Width="100" />
  <Columns2 Index="2" Visiable="True" HeadText="类型" Width="100" />
  <Columns3 Index="3" Visiable="True" HeadText="编号" Width="100" />
</Columns>


读写示例代码如下:

/// <summary>
        /// 读XML
        /// </summary>
        public void RXml()
        {
            if (File.Exists(Sys_Xml))
            {
                XmlDocument xdoc = new XmlDocument();
                xdoc.Load(Sys_Xml);
                XmlNode xn= xdoc.SelectSingleNode("Columns");
                XmlNodeList xnl = xn.ChildNodes;

                foreach (XmlNode xnd in xnl)
                {
                    int idx;
                    int.TryParse(xnd.Attributes["Index"].Value,out idx);
                    if (idx <= dataGridView1.Columns.Count)
                    {
                        bool vis;
                        bool.TryParse(xnd.Attributes["Visiable"].Value,out vis);
                        dataGridView1.Columns[idx].Visible = vis;
                        dataGridView1.Columns[idx].HeaderText = xnd.Attributes["HeadText"].Value;
                        int wid;                        
                        int.TryParse(xnd.Attributes["Width"].Value,out wid);
                        dataGridView1.Columns[idx].Width=wid;
                    }
                }
            }
        }

        /// <summary>
        /// 写XML
        /// </summary>
        public void WXml()
        {
            XmlDocument xdoc = new XmlDocument();
            //创建类型声明节点  
            XmlNode node = xdoc.CreateXmlDeclaration("1.0", "utf-8", "");
            xdoc.AppendChild(node);
                
            //创建根节点    
            XmlNode root = xdoc.CreateElement("Columns");
            xdoc.AppendChild(root);

            foreach (DataGridViewColumn dc in dataGridView1.Columns)
            {
                XmlElement xnode = xdoc.CreateElement("Columns" + dc.Index.ToString());
                xnode.SetAttribute("Index", dc.Index.ToString());
                xnode.SetAttribute("Visiable", dc.Visible.ToString());
                xnode.SetAttribute("HeadText", dc.HeaderText);
                xnode.SetAttribute("Width", dc.Width.ToString());
                root.AppendChild(xnode);
            }
            xdoc.Save(Sys_Xml);
        }




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值