有一次看到一个同志写的网站后台,操作XML文件方法比较生硬,就写了一个简单的操作XML的类。
有兴趣的同志可以下载了看看,如果对您有帮助的话小弟倍感荣幸
https://files.cnblogs.com/zhhh/zhh.Xml.rar
这是源码,bin目录中有生成的类库,是.net2.0的项目
有高手有兴趣了给指点一下,谢谢了
-----------------------
下面是这个类的说明,总体来说非常简单:
======================================================
XMLReader类的主要功能是:从某个XML文件的某个节点中读取或设置一个属性,或一个子节点的文本,或一个对象(对象属性对应该节点的同名子节点)
XMLReader类中包含下面几个功能(方法):
1、根据一个属性名获取一个属性的值
2、根据一个节点名获取一个节点的文本
3、获取一个指定类型的对象
4、根据属性名和属性值设置一个属性的值
5、根据节点名和节点值设置一个节点的文本
6、设置一个对象
比如有一个XML文件存放路径是D:\jj.xml,文件内容如下:
<Root>
<Man>
<Name>XiaoBei</Name>
<Age>25</Age>
<IsMale>False</IsMale>
</Man>
</Root>
你可以先引入命名空间zhh.Xml
然后使用下面方法创建一个XMLReader对象
这句话的意思是将XMLReader对象定位到D:\jj.xml文件下的Root节点下的Man节点,以后的操作都将针对该节点执行。
执行完上面的对象声明语句以后,就可以直接使用它了。
比如,这个语句可以为当前节点添加一个名为name的Xml节点属性,值为ok。
执行完以后XML文件就变成这个样子了:
<Root>
<Man name="ok">
<Name>XiaoBei</Name>
<Age>25</Age>
<IsMale>False</IsMale>
</Man>
</Root>
当然,使用下面语句就可以将刚才写入XML文件的ok读取出来
如果要改变当前节点下的Name子节点中的值,可以使用下面这条语句
同样,使用这条语句可以把刚才存入的值语取出来
最基本的两个功能完了,下面看一个稍微复杂一点的功能:
比如有如下实体类:
{
publicstring Name { get; set; }
publicint Age { get; set; }
publicbool IsMale { get; set; }
}
我们使用这个语句就可以直接把XML文件中的内容读取出来(将子节点中的内容直接封装到对象对应的属性中):
同样,也可以直接将下面这个对象保存到当前节点下:
xr.SetObject(m);
不过,在进行对象反射的时候暂时只支持基本类型的数据操作