zoukankan      html  css  js  c++  java
  • C# datatable 与 xml文件之间的转换

    /// <summary>
    /// datatable转XML文件
    /// </summary>
    /// <param name="dtTable"></param>
    /// <param name="strXMLPath"></param>
    /// <returns></returns>
    public bool DataTableToXML(DataTable dtTable, string strXMLPath)
    {
    MemoryStream stream = null;
    XmlTextWriter writer = null;
    DataSet ds=new DataSet ();
    ds.Tables.Add(dtTable.Copy());
    StreamWriter sw = null;
    try
    {
    stream = new MemoryStream();
    writer = new XmlTextWriter(stream, Encoding.UTF8);
    ds.WriteXml(writer, XmlWriteMode.WriteSchema);
    int nCount = (int)stream.Length;
    byte[] arr = new byte[nCount];
    stream.Seek(0, SeekOrigin.Begin);
    stream.Read(arr, 0, nCount);
    UTF8Encoding utf = new UTF8Encoding();
    string strContent = utf.GetString(arr).Trim();
    sw = new StreamWriter(strXMLPath);
    sw.Write(strContent);
    
    return true;
    }
    catch (System.Exception vErr)
    {
    MessageBox.Show(vErr.Message);
    return false;
    }
    finally
    {
    if (writer != null)
    {
    writer.Close();
    }
    if (sw != null)
    {
    sw.Close();
    }
    }
    }
    /// <summary>
    /// 读取XML转datatable
    /// </summary>
    /// <param name="strXMLPath"></param>
    /// <returns></returns>
    public DataTable XMLToDataTable(string strXMLPath)
    {
    StringReader stream = null;
    XmlTextReader reader = null;
    StreamReader sr = null;
    try
    {
    if (strXMLPath.Length <= 0)
    {
    return new DataTable();
    }
    sr = new StreamReader(strXMLPath);
    string strXmlContent = sr.ReadToEnd();
    stream = new StringReader(strXmlContent);
    reader = new XmlTextReader(stream);
    DataSet ds = new DataSet();
    ds.ReadXml(reader);
    return ds.Tables[0];
    }
    catch (System.Exception vErr)
    {
    MessageBox.Show(vErr.Message);
    }
    finally
    {
    if (sr != null)
    sr.Close();
    if (reader != null)
    reader.Close();
    }
    return new DataTable();
    }
  • 相关阅读:
    第九篇 python基础之函数,递归,内置函数
    第六篇:python基础之文件处理
    第五篇:python基础之字符编码
    第四篇:python基础之条件和循环
    第三篇:python基础之数据类型与变量
    第二篇:python基础之核心风格
    第一篇:初识Python
    作业
    作业3
    作业2
  • 原文地址:https://www.cnblogs.com/xiaoerlang90/p/4126518.html
Copyright © 2011-2022 走看看