如何将datagridview中的数据导出到Excel中(转)

来源:互联网 发布:php 使用fileinput.js 编辑:程序博客网 时间:2024/05/22 20:07
using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms ; using System.IO; namespace OutputToExecl {     public class ExportXLS     {         public ExportXLS()         {           }         public static void ExportDataGridViewToExcel(DataGridView dataGridview1)         {             SaveFileDialog saveFileDialog = new SaveFileDialog();             saveFileDialog.Filter = "Execl files (*.xls)|*.xls";             saveFileDialog.FilterIndex = 0;             saveFileDialog.RestoreDirectory = true;             saveFileDialog.CreatePrompt = true;             saveFileDialog.Title = "导出Excel文件到";              if (DialogResult.Cancel == saveFileDialog.ShowDialog())            {                return;            }                  Stream myStream;             myStream = saveFileDialog.OpenFile();             StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));            string str = "";             try             {                 //写标题                  for (int i = 0; i < dataGridview1.ColumnCount; i++)                 {                     if (i > 0)                     {                         str += "\t";                     }                     str += dataGridview1.Columns[i].HeaderText;                 }                 sw.WriteLine(str);                 //写内容                 for (int j = 0; j < dataGridview1.Rows.Count; j++)                 {                     string tempStr = "";                     for (int k = 0; k < dataGridview1.Columns.Count; k++)                     {                         if (k > 0)                         {                             tempStr += "\t";                         }                         tempStr += dataGridview1.Rows[j].Cells[k].Value.ToString();                    }                     sw.WriteLine(tempStr);                 }                 sw.Close();                 myStream.Close();             }             catch (Exception e)             {                 MessageBox.Show(e.ToString());             }             finally             {                 sw.Close();                 myStream.Close();             }         }     } }