将datagridview的结果导出到Excel

 1         /// <summary>
 2         /// 导出Excel
 3         /// </summary>
 4         /// <param name="sheetName">表名</param>
 5         /// <param name="dgv">要导出的文件名称</param>
 6         public void DataGridViewToExcel(string sheetName, DataGridView dgv)
 7         {
 8             //创建一个保存对话框
 9             SaveFileDialog save = new SaveFileDialog();
10             //创建一个流
11             Stream stream = null;
12             //设置文件类型
13             save.Filter = "Execl files (*.xls)|*.xls";
14             //文件类型默认第一个
15             save.FilterIndex = 0;
16             //上一次选择的目录
17             save.RestoreDirectory = true;
18             //获取或设置一个值,该值指示如果用户指定不存在的文件,对话框是否提示用户允许创建该文件。
19             save.CreatePrompt = true;
20             //设置保存窗口的标题
21             save.Title = "保存当前内容到Excel";
22             //创建工作簿
23             IWorkbook workbook = new HSSFWorkbook();
24             //表名称
25             ISheet sheet = workbook.CreateSheet(sheetName);
26             //创建行
27             IRow row = sheet.CreateRow(0);
28             //获取列数 设置表头
29             for (int i = 0; i < dgv.ColumnCount; i++)
30             {
31                 //设置列标题
32                 row.CreateCell(i).SetCellValue(dgv.Columns[i].HeaderText);
33             }
34             int rowindex = 1;//根据这个NPOI创建行
35             //设置行
36             for (int j = 0; j < dgv.Rows.Count; j++)
37             {
38                 IRow dataRow = sheet.CreateRow(rowindex);
39                 //数据列内容
40                 for (int k = 0; k < dgv.Columns.Count; k++)
41                 {
42                     dataRow.CreateCell(k).SetCellValue(dgv.Rows[j].Cells[k].Value.ToString().Trim());
43                 }
44                 rowindex++;
45             }
46             //判断是否单击确定
47             if (save.ShowDialog() == DialogResult.OK)
48             {
49                 stream = save.OpenFile();//将选择的路径和流赋值
50                 if (stream != null)
51                 {
52                     //将表格内容写入到流中
53                     workbook.Write(stream);
54                     MessageBox.Show("信息导出成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
55                 }
56             }
57             //释放资源,要不然导出来得把当前客户端关闭才能打开文件
58             workbook = null;
59             sheet = null;
60             row = null;
61             stream.Dispose();
62         }

 

将datagridview的结果导出到Excel,布布扣,bubuko.com

将datagridview的结果导出到Excel

上一篇:fonts.googleapis.com ajax.googleapis.com wordpress加载慢的解决方法【转】


下一篇:R1-013 Shell函数使用规则