您的位置:首页 > 其它

winform导出dataviewgrid数据为excel

2014-05-16 18:34 363 查看
#region 导出dataViewGrid视图中的数据为xls格式
private void btnExportList_Click(object sender, EventArgs e)
{
string fname = string.Empty;

SaveFileDialog sfd = new SaveFileDialog();

sfd.Filter = "表格文件|*.xls";
sfd.DefaultExt = "xls";

if (sfd.ShowDialog() == DialogResult.OK)
{
fname = sfd.FileName;
}
else
{
return;
}

//导出当前dataGridView中的所有数据到xls文件
//1.引入库文件,新建lib文件夹,复制相关文件
//2.在项目中添加对这几个dll的引用
//3.在内存中建立 excel表文件
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbook.CreateSheet("第一页");

//创建标题头
HSSFRow title = sheet.CreateRow(0);
title.CreateCell(0).SetCellValue("编号");
title.CreateCell(1).SetCellValue("姓名");
title.CreateCell(2).SetCellValue("性别");
title.CreateCell(3).SetCellValue("年龄");
title.CreateCell(4).SetCellValue("地址");
title.CreateCell(5).SetCellValue("电话");
title.CreateCell(6).SetCellValue("生日");
for (int rowindex = 0; rowindex < dgvStudens.RowCount; rowindex++)
{
//创建第一行
HSSFRow row = sheet.CreateRow(rowindex + 1);

for (int colindex = 0; colindex < dgvStudens.Rows[rowindex].Cells.Count; colindex++)
{
row.CreateCell(colindex).SetCellValue((dgvStudens.Rows[rowindex].Cells[colindex].Value == null) ? null : dgvStudens.Rows[rowindex].Cells[colindex].Value.ToString());
}
////创建第一行的第一列
//HSSFCell cell = row.CreateCell(0);
//cell.SetCellType(3);
//cell.SetCellValue(dgvStudens.Rows[rowindex].Cells[0].Value.ToString());
////第一行第2列
//row.CreateCell(1).SetCellValue(dgvStudens.Rows[rowindex].Cells[1].Value.ToString());
////第一行第3列
//row.CreateCell(2).SetCellValue(dgvStudens.Rows[rowindex].Cells[2].Value.ToString());
////第一行第4列,age,可能会为空
//// row.CreateCell(3).SetCellValue(dgvStudens.Rows[0].Cells[3].Value.ToString());
//row.CreateCell(3).SetCellValue((dgvStudens.Rows[rowindex].Cells[3].Value == null) ? null : dgvStudens.Rows[rowindex].Cells[3].Value.ToString());
}

using (FileStream fs = new FileStream(fname, FileMode.Create))
{

workbook.Write(fs);
}

;

}
#endregion
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: