public void DataTableToCSV(DataTable dtCSV, string csvFileFullName, bool writeHeader,
string delimeter)
{
if ((null != dtCSV) && (dtCSV.Rows.Count > ))
{
//Delete the old one
if (File.Exists(csvFileFullName))
{
File.Delete(csvFileFullName);
} string tmpLineText = ""; //Write header
if (writeHeader)
{
tmpLineText = "";
for (int i = ; i < dtCSV.Columns.Count; i++)
{
string tmpColumnValue = dtCSV.Columns[i].ColumnName;
if (tmpColumnValue.Contains(delimeter))
{
tmpColumnValue = "\"" + tmpColumnValue + "\"";
} if (i == dtCSV.Columns.Count - )
{
tmpLineText += tmpColumnValue;
}
else
{
tmpLineText += tmpColumnValue + delimeter;
}
}
WriteFile(csvFileFullName, tmpLineText);
} //Write content
for (int j = ; j < dtCSV.Rows.Count; j++)
{
tmpLineText = "";
for (int k = ; k < dtCSV.Columns.Count; k++)
{
string tmpRowValue = dtCSV.Rows[j][k].ToString();
if (tmpRowValue.Contains(delimeter))
{
tmpRowValue = "\"" + tmpRowValue + "\"";
} if (k == dtCSV.Columns.Count - )
{
tmpLineText += tmpRowValue;
}
else
{
tmpLineText += tmpRowValue + delimeter;
}
}
WriteFile(csvFileFullName, tmpLineText);
}
}
} private void WriteFile(string fileFullName, string message)
{
using (StreamWriter sw = new StreamWriter(fileFullName, true, Encoding.UTF8))
{
sw.WriteLine(message);
}
}

c# datatable 如何转CSV文件的更多相关文章

  1. 将DataTable转换成CSV文件

    DataTable用于在.net项目中,用于缓存数据,DataTable表示内存中数据的一个表.CSV文件最早用在简单的数据库里,由于其格式简单,并具备很强的开放性,所以起初被扫图家用作自己图集的标记 ...

  2. C#将DataTable数据导出CSV文件

    C#将DataTable数据导出CSV文件通用方法! //导出按钮调用导出方法    protected void btnCSV_Click(object sender, EventArgs e)   ...

  3. DataTable数据导出CSV文件

    public static void SaveAsExcel(DataTable dt1) { //System.Windows.Forms.SaveFileDialog sfd = new Syst ...

  4. 每日学习心得:Linq解决DataTable按照某一列的值排序问题/DataTable 导出CSV文件/巧用text-overflow解决数据绑定列数据展示过长问题

    2013-8-5 1 Linq解决DataTable按照某一列的值排序 在之前的总结中提到过对拼接而成的复合的DataTable按照某一列值的大小排序,那个主要的思想是在新建表结构时将要排序的那一列的 ...

  5. csv文件与DataTable互相导入处理

    封装处理下,以后项目用到可以直接使用,比较简单. 1.首先看封装好的类 using System; using System.Data; using System.IO; using System.T ...

  6. C#实现DataTable转.CSV文件

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

  7. C#:CsvReader读取.CSV文件并转换成DataTable

    原文引用:https://www.codeproject.com/Articles/9258/A-Fast-CSV-Reader using LumenWorks.Framework.IO.Csv; ...

  8. C#:StreamReader读取.CSV文件(转换成DataTable)

    using System.Data; using System.IO; /// <summary> /// Stream读取.csv文件 /// </summary> /// ...

  9. C#:CsvReader读取.CSV文件(转换成DataTable)

    原文引用:https://www.codeproject.com/Articles/9258/A-Fast-CSV-Reader using LumenWorks.Framework.IO.Csv; ...

随机推荐

  1. PHP中smarty与MYSQL数据库的连接

    进行与MYSQL数据库的关联 先从最简单的数据库查询语句开始 1.先创建mysql数据库 仅仅创建一个测试数据 2.引用smarty框架 3.按照上文在damo文件夹下创建smarty_inc.php ...

  2. tensorflow查看ckpt各节点名称

    from tensorflow.python import pywrap_tensorflowimport os checkpoint_path=os.path.join('output/res101 ...

  3. mfc递归删除文件夹

    BOOL myDeleteDirectory(CString directory_path) //删除一个文件夹下的所有内容 { BOOL ret=TRUE; CFileFind finder; CS ...

  4. Qt编写自定义控件20-自定义饼图

    前言 上次在写可视化数据大屏电子看板项目的时候,为了逐步移除对QChart的依赖(主要是因为QChart真的太垃圾了,是所有Qt的模块中源码最烂的一个,看过源码的人没有一个不吐槽,不仅不支持10W级别 ...

  5. spring mvc 返回JSON数据

    servlet相关XML配置 <!--这个不启用会报错--><mvc:annotation-driven /> <bean class="org.springf ...

  6. 使用Android Studio时你应该知道的一切配置和使用Genymotion模拟器运行程序

    参考博客: 配置Android Studio: http://www.cnblogs.com/wi100sh/p/5653427.html Android Studio打包APK: http://bl ...

  7. localstack环境搭建

    前置 Python Docker Desktop 安装 1.使用pip安装aws-cli,则可以在cmd中使用aws命令: $pip install awscli 2.从dockerhub拉取kine ...

  8. StormUI各参数详解

    参考:http://www.malinga.me/reading-and-understanding-the-storm-ui-storm-ui-explained/  

  9. 洛谷 题解 P2502 【[HAOI2006]旅行】

    由于此题边数比较小,所以可以先给边排个序,然后跑m遍最小生成树,每跑一次删除一条边,找最优解. 防TLE技巧 把边按从小到大的顺序排好,那么只要当前无法联通,那么后面也无法联通 最优解找法 doubl ...

  10. lua数据类型的的操作(三)

    上一章我们学习了lua的数据类型,以及语法的定义,今天我们学习lua的数据类型操作,其实就是lua库一些api的操作,遇到对数据类型处理时,可以根据lua库提供的操作来实现. 一.字符串操作 1.字符 ...