xml操作类

 

 

近来在网上看见一个xml操作类.....呵呵,挺好,

各位看看,希望能对想了解xml的人有所帮助..

呵呵.....

using  System;
using  System.Data;
using  System.Configuration;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;
using  System.Globalization;
/// <summary>
/// 操作XML文件
/// </summary>

public   class  UserInfoTable : IDisposable
{
    
/// <summary>
    
/// XML文件路径
    
/// </summary>

    private static string strXmlFile = "~/App_Data/UserInfo.xml";
    
/// <summary>
    
/// DataSet对象
    
/// </summary>

    private DataSet dataset = null;
    
/// <summary>
    
/// XML文件相对路径
    
/// </summary>

    private string strFilePath = null;
    
/// <summary>
    
/// 构造函数
    
/// </summary>

    public UserInfoTable()
 
{
        
// 实例化DataSet
        dataset = new DataSet();
        
// 不依赖于区域性
        dataset.Locale = CultureInfo.InvariantCulture;
        
// 取得XML文件虚拟路径
        strFilePath = HttpContext.Current.Server.MapPath(strXmlFile);
        
// 读取XML文件
        dataset.ReadXml(strFilePath);
 }

    
/// <summary>
    
/// 资源释放
    
/// </summary>

    public void Dispose()
    
{
        
// 关闭DataSet
        dataset.Dispose();
        GC.SuppressFinalize(
this);
    }

    
/// <summary>
    
/// 检索数据
    
/// </summary>
    
/// <returns>DataSet对象</returns>

    public DataSet GetDataSet()
    
{
        
// 返回DataSet对象
        return dataset;
    }

    
/// <summary>
    
/// 更新数据
    
/// </summary>
    
/// <param name="nID">Id</param>
    
/// <param name="strName">Name</param>
    
/// <returns>更新是否成功</returns>

    public void UpdateDataSet(int Id, string Name)
    
{
        
try
        
{
            
// 选择节点条件
            string strFilter = "Id=" + Id.ToString(CultureInfo.InvariantCulture);
            
// 记录取得的行的集合
            DataRow[] rows = dataset.Tables[0].Select(strFilter);
            
// 如果取到记录
            if (rows.Length > 0)
            
{
                
// 更新数据
                rows[0]["Name"= Name;
                
// 保存数据
                Save();
            }

        }

        
catch (Exception)
        
{
        }

    }

    
/// <summary>
    
/// 删除一条数据
    
/// </summary>
    
/// <param name="nID">ID</param>
    
/// <returns>是否删除成功</returns>

    public void DeleteDataSet(int Id)
    
{
        
try
        
{
            
// 选择节点条件
            string strFilter = "Id=" + Id.ToString(CultureInfo.InvariantCulture);
            
// 记录取得的行的集合
            DataRow[] rows = dataset.Tables[0].Select(strFilter);
            
// 如果取到记录
            if (rows.Length > 0)
            
{
                
// 删除数据
                rows[0].Delete();
                
// 保存数据
                Save();
            }

        }

        
catch (Exception)
        
{
        }

    }

    
/// <summary>
    
/// 插入数据
    
/// </summary>
    
/// <param name="strName">姓名</param>
    
/// <returns>是否插入成功</returns>

    public void InsertDataSet(int Id, string Name)
    
{
        DataRow row 
= dataset.Tables[0].NewRow();
        row[
"Id"= Id;
        row[
"Name"= Name;
        dataset.Tables[
0].Rows.Add(row);
        Save();
    }

    
/// <summary>
    
/// 保存XML文档
    
/// </summary>

    private void Save()
    
{
        
// 写入XML文档
        dataset.WriteXml(strFilePath, XmlWriteMode.IgnoreSchema);
    }

}


 
 
 
 
 
 
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值