using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ExportDataGridviewtoExcel
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
BindDataGrid();
}
private void
BindDataGrid()
{
DataTable dt = new
DataTable();
dt.Columns.Add("UserId", typeof(Int32));
dt.Columns.Add("UserName", typeof(string));
dt.Columns.Add("Education",
typeof(string));
dt.Columns.Add("Location", typeof(string));
dt.Rows.Add(1, "Krishna", "MCA", "Gurgaon");
dt.Rows.Add(2, "Raja", "MBA", "Delhi");
dt.Rows.Add(3, "Sanu", "B.Tech", "kanpu");
dt.Rows.Add(4, "amit", "MSC", "delhi");
dt.Rows.Add(5, "sonu", "CA", "Jaipur");
dt.Rows.Add(6, "rohit", "B.Tech", "Nagpur");
dataGridView1.DataSource = dt;
}
private void
button1_Click(object sender, EventArgs e)
{
if
(dataGridView1.Rows.Count > 0)
{
try
{
// Bind Grid Data to Datatable
DataTable dt = new DataTable();
foreach (DataGridViewColumn
col in dataGridView1.Columns)
{
dt.Columns.Add(col.HeaderText, col.ValueType);
}
int count = 0;
foreach (DataGridViewRow
row in dataGridView1.Rows)
{
if (count < dataGridView1.Rows.Count - 1)
{
dt.Rows.Add();
foreach (DataGridViewCell
cell in row.Cells)
{
dt.Rows[dt.Rows.Count
- 1][cell.ColumnIndex] = cell.Value.ToString();
}
}
count++;
}
// Bind table data to Stream Writer to export
data to respective folder
StreamWriter wr = new StreamWriter(@""+textBox1.Text+"\\Book1.xls");
// Write Columns to excel file
for (int
i = 0; i < dt.Columns.Count; i++)
{
wr.Write(dt.Columns[i].ToString().ToUpper() + "\t");
}
wr.WriteLine();
//write rows to excel file
for (int
i = 0; i < (dt.Rows.Count); i++)
{
for (int j = 0; j <
dt.Columns.Count; j++)
{
if (dt.Rows[i][j] != null)
{
wr.Write(Convert.ToString(dt.Rows[i][j]) + "\t");
}
else
{
wr.Write("\t");
}
}
wr.WriteLine();
}
wr.Close();
label1.Text = "Data Exported
Successfully";
}
catch (Exception
ex)
{
throw ex;
}
}
}
private void
button2_Click(object sender, EventArgs e)
{
DialogResult result =
folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK)
{
textBox1.Text = folderBrowserDialog1.SelectedPath.ToString();
}
}
}
}
// Result