用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - asp代码库

xml帮助类

2014-05-31 作者: 苏起举报

[asp]代码库

using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Xml;

/// <summary>
/// XmlTableHepler 的摘要说明
/// </summary>
public class XmlTableHepler
{
    public XmlTableHepler()
    {
        //
        // TODO: 在此处添加构造函数逻辑
        //
    }
    #region
    /// 将DataTable对象转换成XML字符串
    /// </summary>
    /// <param name="dt">DataTable对象</param>
    /// <returns>XML字符串</returns>
    public static string CDataToXml(DataTable dt)
    {
        if (dt != null)
        {
            MemoryStream ms = null;
            XmlTextWriter XmlWt = null;
            try
            {
                ms = new MemoryStream();
                //根据ms实例化XmlWt
                XmlWt = new XmlTextWriter(ms, Encoding.Unicode);
                //获取ds中的数据
                dt.WriteXml(XmlWt);
                int count = (int)ms.Length;
                byte[] temp = new byte[count];
                ms.Seek(0, SeekOrigin.Begin);
                ms.Read(temp, 0, count);
                //返回Unicode编码的文本
                UnicodeEncoding ucode = new UnicodeEncoding();
                string returnValue = ucode.GetString(temp).Trim();
                return returnValue;
            }
            catch (System.Exception ex)
            {
                throw ex;
            }
            finally
            {
                //释放资源
                if (XmlWt != null)
                {
                    XmlWt.Close();
                    ms.Close();
                    ms.Dispose();
                }
            }
        }
        else
        {
            return "";
        }
    }

    /// 将DataSet对象中指定的Table转换成XML字符串
    /// </summary>
    /// <param name="ds">DataSet对象</param>
    /// <param name="tableIndex">DataSet对象中的Table索引</param>
    /// <returns>XML字符串</returns>
    public static string CDataToXml(DataSet ds, int tableIndex)
    {
        if (tableIndex != -1)
        {
            return CDataToXml(ds.Tables[tableIndex]);
        }
        else
        {
            return CDataToXml(ds.Tables[0]);
        }
    }
    /**/
    /// <summary>
    /// 将DataSet对象转换成XML字符串
    /// </summary>
    /// <param name="ds">DataSet对象</param>
    /// <returns>XML字符串</returns>
    public static string CDataToXml(DataSet ds)
    {
        return CDataToXml(ds, -1);
    }
    /**/
    /// <summary>
    /// 将DataView对象转换成XML字符串
    /// </summary>
    /// <param name="dv">DataView对象</param>
    /// <returns>XML字符串</returns>
    public static string CDataToXml(DataView dv)
    {
        return CDataToXml(dv.Table);
    }
   
  
  
#endregion


    #region XML转换成Datable
    /// 将Xml内容字符串转换成DataSet对象
    /// </summary>
    /// <param name="xmlStr">Xml内容字符串</param>
    /// <returns>DataSet对象</returns>
    public static DataSet CXmlToDataSet(string xmlStr)
    {
        if (!string.IsNullOrEmpty(xmlStr))
        {
            StringReader StrStream = null;
            XmlTextReader Xmlrdr = null;
            try
            {
                DataSet ds = new DataSet();
                //读取字符串中的信息
                StrStream = new StringReader(xmlStr);
                //获取StrStream中的数据
                Xmlrdr = new XmlTextReader(StrStream);
                //ds获取Xmlrdr中的数据               
                ds.ReadXml(Xmlrdr);
                return ds;
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                //释放资源
                if (Xmlrdr != null)
                {
                    Xmlrdr.Close();
                    StrStream.Close();
                    StrStream.Dispose();
                }
            }
        }
        else
        {
            return null;
        }
    }
    /**/
    /// <summary>
    /// 将Xml字符串转换成DataTable对象
    /// </summary>
    /// <param name="xmlStr">Xml字符串</param>
    /// <param name="tableIndex">Table表索引</param>
    /// <returns>DataTable对象</returns>
    public static DataTable CXmlToDatatTable(string xmlStr, int tableIndex)
    {
        return CXmlToDataSet(xmlStr).Tables[tableIndex];
    }
    /**/
    /// <summary>
    /// 将Xml字符串转换成DataTable对象
    /// </summary>
    /// <param name="xmlStr">Xml字符串</param>
    /// <returns>DataTable对象</returns>
    public static DataTable CXmlToDatatTable(string xmlStr)
    {
        return CXmlToDataSet(xmlStr).Tables[0];
    }
   
  
#endregion
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...