Anexo código que nos permite exportar un DataTable a un archivo plano con extensión CSV desde Visual studio C#
Para este ejemplo creamos un DataTable:
Este es el evento Click del boton (btnExportar) en la pagina aspx
Método que Exporta los datos y muestra el archivo para abrirlo.
Exportar un Dataset a Excel desde c# es una funcionalidad muy interesante, los invito a consultarla.
Si tienen alguna duda o ampliar la información me cuentan, hasta pronto.
Para este ejemplo creamos un DataTable:
private DataTable TablaEnvioSms()
{
DataTable dtSms = new DataTable();
dtSms.Columns.Add("Fila", typeof(string));
dtSms.Columns.Add("Nombres", typeof(string));
dtSms.Columns.Add("Apellidos", typeof(string));
dtSms.Columns.Add("Direccion", typeof(string));
dtSms.Columns.Add("Telefono", typeof(string));
return dtSms;
}
Este es el evento Click del boton (btnExportar) en la pagina aspx
protected void btnExportar_Click(object sender, EventArgs e)
{
DataTable dtSms = new DataTable();
//Asignamos estructura del DataTable
dtSms = TablaEnvioSms();
DataRow newRow;
//primera fila
newRow = dtSms.NewRow();
newRow["Fila"] = "1";
newRow["Nombres"] = "Pedro Luis";
newRow["Apellidos"] = "Ramirez Perez";
newRow["Direccion"] = "Calle 1 No. 2 2";
newRow["Telefono"] = "5555";
dtSms.Rows.Add(newRow);
//segunda fila
newRow = dtSms.NewRow();
newRow["Fila"] = "2";
newRow["Nombres"] = "Maria tereza";
newRow["Apellidos"] = "Ramirez Perez";
newRow["Direccion"] = "Calle 1 No. 2 2";
newRow["Telefono"] = "44444";
dtSms.Rows.Add(newRow);
//Realizamos el Llamado al metodo que exporta la estructura del DataTable.
//Ademas recibe el nombre del archivo CSV y la ruta donde se almacenara.
DataTableCSVFile(dtSms, "ExportarDatos.csv", "c://");
}
public void DataTableCSVFile(DataTable dt,string sfilename, string strFilePath)
{
StreamWriter sw = new StreamWriter(strFilePath + sfilename, false);
int iColCount = dt.Columns.Count;
// Escribiendo las Columnas del DataTable.
for (int i = 0; i < iColCount; i++)
{
sw.Write(dt.Columns[i]);
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
// Escribiendo todas las Filas del DataTable.
foreach (DataRow dr in dt.Rows)
{
for (int i = 0; i < iColCount; i++)
{
if (!Convert.IsDBNull(dr[i]))
{
sw.Write(dr[i].ToString());
}
if (i < iColCount - 1)
{
sw.Write(",");
}
}
sw.Write(sw.NewLine);
}
sw.Close();
Response.Clear();
Response.ContentType = "application/csv";
Response.AddHeader("Content-Disposition", "attachment; filename=" + sfilename);
Response.WriteFile(strFilePath + sfilename);
Response.Flush();
Response.End();
}
Exportar un Dataset a Excel desde c# es una funcionalidad muy interesante, los invito a consultarla.
Si tienen alguna duda o ampliar la información me cuentan, hasta pronto.
"" Si tienes dudas o quieras ampliar este artículo, lo puedes hacer dejando tus comentarios. Además, si lo consideras interesante puedes compartirlo con amigos y seguidores a través de los botones sociales que aparecen en esta página.""



