`
hududanyzd
  • 浏览: 815532 次
文章分类
社区版块
存档分类
最新评论

C#中将DataTable中数据导出到csv文件中

 
阅读更多

在上一篇博文【C#读取CSV文件的方法】中,我介绍了读取csv文件中数据的方法,现在我来介绍下将datatable中的数据导出到csv文件中的方法,废话不

多说了,deme程序的代码如下:

protected void Button1_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt.Columns.Add("test1");
dt.Columns.Add("test2");
dt.Columns.Add("test3");
dt.Columns.Add("test4");
dt.Columns.Add("test5");
for (int i = 0; i < 6; i++)
{
dt.Rows.Add();
dt.Rows[i][0] = "CN"+i.ToString();
dt.Rows[i][1] = "EN"+i.ToString();
dt.Rows[i][2] = "JN"+i.ToString();
dt.Rows[i][3] = "HK"+i.ToString();
dt.Rows[i][4] = "TW"+i.ToString();
}

ExportDataGridToCSV(dt);

}

/// <summary>
/// Export the data from datatable to CSV file
/// </summary>
/// <param name="grid"></param>
public void ExportDataGridToCSV(DataTable dt)
{
string strFile = "";
string path = "";

//File info initialization
strFile = "test";
strFile = strFile + DateTime.Now.ToString("yyyyMMddhhmmss");
strFile = strFile + ".csv";
path = Server.MapPath(strFile);



System.IO.FileStream fs = new FileStream(path, System.IO.FileMode.Create, System.IO.FileAccess.Write);
StreamWriter sw = new StreamWriter(fs, new System.Text.UnicodeEncoding());
//Tabel header
for (int i = 0; i < dt.Columns.Count; i++)
{
sw.Write(dt.Columns[i].ColumnName);
sw.Write("\t");
}
sw.WriteLine("");
//Table body
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int j = 0; j < dt.Columns.Count; j++)
{
sw.Write(DelQuota(dt.Rows[i][j].ToString()));
sw.Write("\t");
}
sw.WriteLine("");
}
sw.Flush();
sw.Close();

DownLoadFile(path);
}

private bool DownLoadFile(string _FileName)
{
try
{
System.IO.FileStream fs = System.IO.File.OpenRead(_FileName);
byte[] FileData = new byte[fs.Length];
fs.Read(FileData, 0, (int)fs.Length);
Response.Clear();
Response.AddHeader("Content-Type", "application/notepad");
string FileName = System.Web.HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(_FileName));
Response.AddHeader("Content-Disposition", "inline;filename=" + System.Convert.ToChar(34) + FileName + System.Convert.ToChar(34));
Response.AddHeader("Content-Length", fs.Length.ToString());
Response.BinaryWrite(FileData);
fs.Close();
System.IO.File.Delete(_FileName);
Response.Flush();
Response.End();
return true;
}
catch (Exception ex)
{
ex.Message.ToString();
return false;
}
}



/// <summary>
/// Delete special symbol
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public string DelQuota(string str)
{
string result = str;
string[] strQuota ={ "~", "!", "@", "#", "$", "%", "^", "&", "*", "(", ")", "`", ";", "'", ",", ".", "/", ":", "/,", "<", ">", "?" };
for (int i = 0; i < strQuota.Length; i++)
{
if (result.IndexOf(strQuota[i]) > -1)
result = result.Replace(strQuota[i], "");
}
return result;
}

分享到:
评论

相关推荐

    C#_把dataTable数据导出到CSV,XLS文件

    标题中的"C#_把dataTable数据导出到CSV,XLS文件"指的是使用C#编程语言将数据从DataTable对象转换并保存为两种不同的文件格式:CSV(逗号分隔值)和XLS(Excel文件)。CSV是一种通用的数据交换格式,通常用于在不同...

    datatable、datagridview导出为csv

    本篇文章将详细介绍如何从DataTable和DataGridView高效地导出数据到CSV文件。 首先,让我们了解DataTable和DataGridView。DataTable是ADO.NET数据模型的一部分,它在内存中代表了一个表格数据集,可以理解为数据库...

    winform中将Datatable数据导出为PDF文件

    本文将深入探讨如何利用C#语言在Winform环境中将DataTable数据转换并导出为PDF文件。PDF(Portable Document Format)是一种广泛接受的文档格式,能够保持原始文档的布局和格式,方便跨平台查看。 首先,我们需要...

    将datatable里的数据导出DBF文件

    上述步骤展示了如何在C#中将`DataTable`中的数据导出至DBF文件的具体实现方法。这种方法适用于需要将数据保存到FoxPro数据库或其他兼容DBF格式的应用场景。值得注意的是,在实际操作过程中还需要考虑到异常处理、...

    winform中将Datatable数据导出到Excel表格中

    winform中将Datatable数据导出到Excel表格中,该项目包含了例子,能使个人能更加了解winform将datatable数据导出到excel的整个流程,本资源也可拿来即用,只需要稍加修改即可。

    导出datatable数据到CSV或者HTML文件,C#

    - "CSV":我们在导出数据时使用了这种格式。 - "HTML":另一种导出格式,用于创建网页。 - "datatable":我们的主要数据结构,用于存储和处理数据。 以上就是使用C#将DataTable数据导出为CSV或HTML文件的基本...

    将DataTable数据导出到EXCEL文件 c#源代码

    本示例涉及的核心知识点是将DataTable中的数据导出到Excel文件,这在数据分析、报表生成以及数据交换等场景中非常常见。下面,我们将详细讨论这个过程。 首先,`DataTable`是.NET Framework中的一个类,它代表了一...

    c# DataTable,DataSet导出到xls,access文件

    总结起来,C#中导出`DataTable`和`DataSet`到XLS和Access文件涉及了对数据操作类的熟练运用,以及对Office Interop库或ODBC/OleDb的了解。通过以上步骤,开发者能够实现数据的灵活导入导出,提高数据处理的效率。

    C# Datatable数据Excel导出和行列转换

    ### C# 中 DataTable 数据到 Excel 的导出及行列转换 #### 一、概述 在实际开发过程中,我们经常需要将数据库中的数据导出为 Excel 文件,以便于数据分析或分享给其他人。同时,在某些场景下还需要对数据进行行列...

    C#将list和DataTable中的数据导出到Excel的功能

    总结来说,通过C#结合Open XML SDK,我们可以方便地将List和DataTable中的数据导出到Excel文件,这在需要生成报表或数据交换的场景中非常实用。这个过程包括数据结构转换、Excel文件创建、工作表和单元格的创建以及...

    C# winform 导出datatable到excel的多个sheet

    使用C#实现了将多个datatable中的内容导出到 一个excel文件的不同的sheet页,每个sheet页对应一个...代码中的datatable是程序中添加的内容,从数据库中导出数据到excel的话只需要将数据表内容写入datatable即可。

    DataTable与CSV文件互转

    将DataTable中数据写入到CSV文件中,将CSV文件的数据读取到DataTable中,C# 编写通用类。

    将DataTable数据源导出到Html文件

    将DataTable数据源导出到Html文件

    C#导出数据到CSV文件的通用类实例

    本文将详细解析C#中用于导出数据到CSV文件的通用类实例,这个通用类封装了C#操作CSV文件的常见功能,简化了开发过程,提高了代码复用性。 首先,我们来看一下`CSVHelper`类的主要结构。这个类包含以下几个关键字段...

    C# 导出DBF的两种方法

    本文将深入探讨如何在C#环境中导出数据到DBF文件,主要介绍两种方法:使用Jet引擎和使用OLEDB连接。 首先,我们来了解Jet引擎。Jet引擎是Microsoft Access的核心组件,它能够读取和写入多种数据格式,包括DBF。以下...

    C# winform打印DataTable数据

    本文将深入探讨如何使用C# WinForms来打印DataTable中的数据。 首先,要实现这个功能,我们需要引入必要的组件。在C# WinForms中,`PrintDocument`组件是用于处理打印任务的核心类,而`PrintPreviewDialog`则可以...

    asp.net 导出 CSV

    然后遍历`DataTable`中的每一行数据,并调用`AppendCSVFields`方法将每一条数据添加到CSV文件中。 ##### 3. `AppendCSVFields`方法 ```csharp private StringBuilder AppendCSVFields(StringBuilder argSource, ...

    JAVA实现类似C#的DataTable数据结构_适用于安卓

    在Java开发中,特别是在Android应用开发中,常常需要处理数据集合,C#中的DataTable是一种非常方便的数据结构,它允许我们动态地存储和操作表格数据。然而,Java原生API并没有提供与之对应的类。这篇博客(博文链接...

    C# CSV 导入导出 dataGridView ,access

    在本项目"CSV Datatable"中,我们关注的是如何使用C#来导入CSV文件到dataGridView控件中显示,以及将dataGridView中的数据导出到CSV文件,同时涉及到与Access数据库的交互。以下将详细介绍这些知识点。 首先,**CSV...

    c# 将Datatable数据导出到Excel表格中

    C# 中将Datatable数据导出到Excel表格是一种常见的数据导出操作,本文将详细介绍如何使用C# 将Datatable数据导出到Excel表格中。 第一步:准备数据 在将Datatable数据导出到Excel表格之前,首先需要准备好要导出的...

Global site tag (gtag.js) - Google Analytics