zoukankan      html  css  js  c++  java
  • C#实现DataTable转.CSV文件

         将DataTable转换成CSV文件是一种常见的转换形式,主要通过遍历Table的每行,再对每行遍历每列,实现对数据的读取,然后用分隔符分隔Table的每个栏位数据,把读取的字符写入到CSV文件中。这里每个栏位之间用逗号分隔,每行用换行符。实现代码如下:

    public ExecutionResult DataTableToCsv(System.Data.DataTable vContent, string vOutputFilePath)
            {
                ExecutionResult sResult = new ExecutionResult();
                System.Text.StringBuilder sCsvContent;
                try
                {
                    sCsvContent = new System.Text.StringBuilder();
                    //栏位
                    for (int i = 0; i < vContent.Columns.Count; i++)
                    {
                        sCsvContent.Append(vContent.Columns[i].ColumnName);
                        sCsvContent.Append(i == vContent.Columns.Count - 1 ? "
    " : ",");
                    }
                    //数据
                    foreach (System.Data.DataRow row in vContent.Rows)
                    {
                        for (int i = 0; i < vContent.Columns.Count; i++)
                        {
                            sCsvContent.Append(row[i].ToString().Trim());
                            sCsvContent.Append(i == vContent.Columns.Count - 1 ? "
    " : ",");
                        }
                    }
                    File.WriteAllText(vOutputFilePath, sCsvContent.ToString(), Encoding.UTF8);
                    sResult.Status = true;
                }
                catch (Exception ex)
                {
                    sResult.Message = ex.Message;
                    sResult.Status = false;
                }
                return sResult;
            }
  • 相关阅读:
    电话聊天狂人
    PAT 1080. MOOC期终成绩
    PAT 1079. 延迟的回文数
    [转载]matlab 中序列求极值的方法
    [转载][转]Matlab-寻找峰值函数
    [转载]Kirchhoff Migration Impulse Response
    Envelope Extraction Using the Analytic Signal
    [转载]地震动的挑选
    C笔记
    Git常用有用命令
  • 原文地址:https://www.cnblogs.com/wml-it/p/12145656.html
Copyright © 2011-2022 走看看