您的位置:首页 > 编程语言 > C#

C# 简单封装一个XML文件读取类

2013-02-16 19:31 183 查看
转自:http://blog.csdn.net/andrew_wx/article/details/6680353

很久没碰XML文件读写了,今天帮朋友写了一个相关的读取XML文件的操作类,封装成dll便于使用。

先说下需求吧:

A:在XML文件中有多个集,每个集里面包含多个节点。

B:可根据集的名字的取出这个集合下面的所有节点值

C:可一次性取出所有的节点值

D:其中有一个是无限拓展的就是:表达式

E:把集合读取到一个模型(实体类)当中

先来看下XML文件结构的分析如下(我用红色方块勾出区域划分):



这里既3个区域(3个集合)。

实际使用效果:



要实现上面的效果,封装好了之后是很简单的。

一行代码即可获得数据。

以下是读取XML内容的代码片段:

[csharp] view
plaincopyprint?

//获取所有指令名 填充到控件  

private void btn_getNames_Click(object sender, EventArgs e)  

{  

    string[] names = xmlOpt.CommandNames;  

    foreach (string str in names)  

    {  

        lst_names.Items.Add(str);  

    }  

}  

  

//获取所有指令 填充到控件  

private void btn_commands_Click(object sender, EventArgs e)  

{  

    foreach (XmlCommandModel model in xmlOpt.GetCommandModelList)  

    {  

        txt_commands.Text += model.CommandName + "\r\n";  

        txt_commands.Text += model.CommandValue + "\r\n";  

        txt_commands.Text += model.CommandString + "\r\n";  

        foreach (string str in model.CommandPuts)  

        {  

            txt_commands.Text += str + "\r\n";  

        }  

    }  

}  

  

//统计指令信息  

private void btn_count_Click(object sender, EventArgs e)  

{  

    txt_count.Text += "一共:" + xmlOpt.commandCout + "条指令" + "\r\n";  

    txt_count.Text += "目标路径:" + xmlOpt.FilePath + "\r\n";  

}  

  

//根据指令名 获取一个指定的指令 填充到控件  

private void btn_GetByName_Click(object sender, EventArgs e)  

{  

    txt_GetByName.Text = "";  

    XmlCommandModel myModel =  xmlOpt.GetCommandModelByName(txt_name.Text);  

    txt_GetByName.Text += myModel.CommandName + "\r\n";  

    txt_GetByName.Text += myModel.CommandValue + "\r\n";  

    txt_GetByName.Text += myModel.CommandString + "\r\n";  

    foreach (string put in myModel.CommandPuts)  

    {  

        txt_GetByName.Text += put + "\r\n";  

    }  

}  

很简单吧,看着很多,其实都是在使用。

提取都是一句话的事情啦。

该例子的完整代码下载地址:http://download.csdn.net/source/3512865
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C#