首页 > 学院 > 开发设计 > 正文

运用NPOI操作EXCEL

2019-11-17 02:50:47
字体:
来源:转载
供稿:网友

运用NPOI操作Excel

一、引入NPOI程序集

下载地址:http://pan.baidu.com/s/1qWI3Vgo

二、运用NPOI导出成excel文件

 1  PRotected void btnOutExcel_Click(object sender, EventArgs e) 2         { 3             HSSFWorkbook workbook = new HSSFWorkbook();//创建一个工作薄 4             ISheet sheet1 = workbook.CreateSheet("学员信息页");//创建一个sheet页 5             IRow rowHeader = sheet1.CreateRow(0);//创建第一行 6             //设置表头内容 7             rowHeader.CreateCell(0, CellType.STRING).SetCellValue("ID");//创建第一行第一列的单元格,设定里面的值为ID 8             rowHeader.CreateCell(1, CellType.STRING).SetCellValue("姓名"); 9             rowHeader.CreateCell(2, CellType.STRING).SetCellValue("用户名");10             rowHeader.CreateCell(3, CellType.STRING).SetCellValue("手机号");11             rowHeader.CreateCell(4, CellType.STRING).SetCellValue("班级");12             rowHeader.CreateCell(5, CellType.STRING).SetCellValue("创建时间");13             //设置数据内容14             OpenDB();15             string strSql = "select UserId,RealName,UserName,PhoneNum,Phase,CreatedTime from UserInfor";16             using (cmd = new SqlCommand(strSql, con))17             {18                 using (read = cmd.ExecuteReader())19                 {20                     int i = 0;21                     while (read.Read())22                     {23                         i++;24                         IRow rowData = sheet1.CreateRow(i);25                         rowData.CreateCell(0, CellType.STRING).SetCellValue(read["UserId"].ToString());//创建第一行第一列的单元格,设定里面的值为ID26                         rowData.CreateCell(1, CellType.STRING).SetCellValue(read["RealName"].ToString());27                         rowData.CreateCell(2, CellType.STRING).SetCellValue(read["UserName"].ToString());28                         rowData.CreateCell(3, CellType.STRING).SetCellValue(read["PhoneNum"].ToString());29                         rowData.CreateCell(4, CellType.STRING).SetCellValue(read["Phase"].ToString());30 31                         ICellStyle styledate = workbook.CreateCellStyle();32                         IDataFormat format = workbook.CreateDataFormat();33                         styledate.DataFormat = format.GetFormat("yyyy/"年/"m/"月/"d/"日/"");34                         ICell cellInDate = rowData.CreateCell(5, CellType.NUMERIC);35                         cellInDate.CellStyle = styledate;36                         cellInDate.SetCellValue(read["CreatedTime"].ToString());37                     }38                     using (Stream stream = File.OpenWrite("e:/1.xls"))39                     {40                         workbook.Write(stream);41                     }42                 }43             }44         }
View Code

三、从excel文件里面导出数据

 1 protected void btnFromExcel_Click(object sender, EventArgs e) 2         { 3             StringBuilder sb = new StringBuilder(); 4             sb.Append("<table>"); 5             sb.Append("<tr><th>ID</th><th>姓名</th><th>用户名</th><th>手机号</th><th>班级</th><th>创建时间</th></tr>"); 6             using (Stream stream = File.OpenRead("e:/1.xls")) 7             { 8                 HSSFWorkbook workbook = new HSSFWorkbook(stream); 9                 int j = workbook.GetSheetAt(0).LastRowNum;10                 for (int row = 1; row <= j; row++)11                 {12                     sb.Append("<tr>");13                     sb.Append(string.Format("<td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td>", workbook.GetSheetAt(0).GetRow(row).GetCell(0).StringCellValue, workbook.GetSheetAt(0).GetRow(row).GetCell(1).StringCellValue, workbook.GetSheetAt(0).GetRow(row).GetCell(2).StringCellValue, workbook.GetSheetAt(0).GetRow(row).GetCell(3).StringCellValue, workbook.GetSheetAt(0).GetRow(row).GetCell(4).StringCellValue, workbook.GetSheetAt(0).GetRow(row).GetCell(5).StringCellValue));14                     sb.Append("</tr>");15                 }16             }17             sb.Append("<table>");18             Response.Write(sb.ToString());19         }
View Code

demo下载


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表