NPOI读取Excel,导入数据到Excel练习01

NPOI 2.2.0.0,初级读取导入Excel

1.读取Excel,将数据绑定到dgv上

 1         private void button1_Click(object sender, EventArgs e)
 2         {
 3             List<Book> books = new List<Book>();
 4             //1.读取Excel文件
 5             using (FileStream fsReder = File.OpenRead("练习.xlsx"))
 6             {
 7                 //2.创建工作簿
 8                 IWorkbook wk = new XSSFWorkbook("练习.xlsx");
 9                 //IWorkbook wk=new XSSFWorkbook(fsReder);
10                 //获取第一个工作表
11                 ISheet sheet = wk.GetSheetAt(0);
12                 //3.遍历每一行,行和列的索引都是从0开始
13                 for (int i = 3; i < sheet.LastRowNum; i++)
14                 {
15                     IRow row = sheet.GetRow(i);
16                     //MessageBox.Show(row.GetCell(0).ToString());
17                     //4.读取每一行的数据,加到对象中
18                     books.Add(new Book()
19                     {
20                         Name = row.GetCell(0).ToString(),
21                         One = row.GetCell(1).ToString(),
22                         Two = row.GetCell(2).ToString(),
23                         Three = row.GetCell(3).ToString(),
24                         Four = row.GetCell(4).ToString(),
25                         Five = row.GetCell(5).ToString(),
26                         Six = row.GetCell(6).ToString(),
27
28                     });
29                 }
30             }
31             //5.绑定数据
32             dgv.DataSource = books;
33             dgv.AutoGenerateColumns = false;
34             dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
35             MessageBox.Show("操作完成");
36         }

  2.将数据导入到Excel中

 1         private void button2_Click(object sender, EventArgs e)
 2         {
 3             List<Book> books = new List<Book>()
 4             {
 5                 new Book() {Name = "火影忍者",One  ="34",Two = "56",Three = "67",Four = "78",Five = "99",Six = "54"},
 6                 new Book() {Name = "海贼王",  One ="64",Two = "79",Three = "97",Four = "74",Five = "29",Six = "56"},
 7                 new Book() {Name = "死神",One  ="94",Two = "51",Three = "57",Four = "64",Five = "90",Six = "74"},
 8                 new Book() {Name = "游戏王",One  ="94",Two = "30",Three = "56",Four = "45",Five = "58",Six = "46"},
 9             };
10             //1.创建工作簿
11             using (FileStream fsWrite = File.OpenWrite("1.xlsx"))
12             {
13                 IWorkbook wk = new XSSFWorkbook();
14                 //2.创建第一个工作表
15                 ISheet sheet = wk.CreateSheet("第一张表");
16                 //第一行设置标题
17                 IRow rowHead = sheet.CreateRow(0);
18
19                 rowHead.CreateCell(0).SetCellValue("图书名");
20                 rowHead.CreateCell(1).SetCellValue("一月");
21                 rowHead.CreateCell(2).SetCellValue("二月");
22                 rowHead.CreateCell(3).SetCellValue("三月");
23                 rowHead.CreateCell(4).SetCellValue("四月");
24                 rowHead.CreateCell(5).SetCellValue("五月");
25                 rowHead.CreateCell(6).SetCellValue("六月");
26
27                 //3.在工作表的最后一行下,循环创建工作表的每一行,添加数据
28                 for (int i = 1; i < books.Count; i++)
29                 {
30                     IRow row = sheet.CreateRow(i);
31                     row.CreateCell(0).SetCellValue(books[i].Name);
32                     row.CreateCell(1).SetCellValue(books[i].One);
33                     row.CreateCell(2).SetCellValue(books[i].Two);
34                     row.CreateCell(3).SetCellValue(books[i].Three);
35                     row.CreateCell(4).SetCellValue(books[i].Four);
36                     row.CreateCell(5).SetCellValue(books[i].Five);
37                     row.CreateCell(6).SetCellValue(books[i].Six);
38                 }
39                 wk.Write(fsWrite);
40             }
41
42             MessageBox.Show("操作完成");
43         }

时间: 2024-10-21 06:50:37

NPOI读取Excel,导入数据到Excel练习01的相关文章

技巧一:Delphi XE3 Excel导入数据到StringGrid

procedure TDataEditDrFrm.btn8Click(Sender: TObject);varexcelx,excely:string;ExcelApp:Variant;workBook:OleVariant;excelRowCount,excelColumnCount:longint;i,j,row,row1:integer; begin row1:=1; pb1.Min:=0; dlgOpen1.Filter:='Excel文件|*.xls|*.xlsx'; if dlgOp

Excel导入数据到Sql server 中出错:“文本被截断,或者一个或多个字符在目标代码页中没有匹配项”

从Excel导入数据到Sql server 时,由于表中的数据有的很长,导入时出现如下错误(如果数据不是很长,255内以内,则不会出现错误): 出错原因: SQL Server的导入导出为了确定数据表的每个字段类型,取excel表的每个字段的前几行(3行即可)来判别.如果前3条是少于255的字符串,则设成nvarchar(255)类型,所以,当如果第四条或更后的数据的字符数大于255,则会报错. 解决方法: 在导入数据前,可以手动加几条无关的数据,让字段的字符数大于255,则导入时SQL Ser

Kettle Excel导入数据到数据库

最近学习大数据的处理,由于项目开发的需要,使用一种简单的方式来将Excel中的数据导入到数据库中,开发使用的kettle工具. kettle工具安装很简单,从官网上下载下来之后,直接解压到制定的盘符下即可(前提是你配置了JAVA的环境变量,path,classpath). 在WINDOWS环境下双击Spoon.bat文件,出现如下图: 点击如图所示的图标,进行本地文件导入的配置 选择红色线框下的选项,点击确定 按照上面的操作,点击确定即可. 直接点击关闭即可. 通过上面两个地方的任意一个都可以创

《.NET学习笔记》——使用NPOI读取Excel导入数据和导出Excel的功能

前提:由于有差不多两年时间没有进行B/S项目开发了,换了新工作,项目中要求有Excel导入数据库的功能,故保存下来供以后查看. 一.使用jQuery的uploadify插件完成选择文件并上传的功能: (1)先引入相关文件: <script src="../Scripts/uploadify/swfobject.js" type="text/javascript"></script> <link href="../Scripts

Dynamics CRM EXCEL导入数据字段类型为选项集时的注意事项

在开始先展示下CRM的导入数据涉及选项集字段时的一个问题 下图是选项集字段的属性 下图是我要导入的excel中的列值,可以看出列明和字段名是一致的,而列值却不是选项集中已有的选项 在导入校验时,只要字段名对上了,选项集字段并未报任何警告提醒 导入成功后针对excel中的列值在选项集中没有的,系统会自动创建 这是一个麻烦,所以怎样才能避免这个问题,或者说在excel中的列值和选项集字段对不上时如何能有个提醒,下面来说解决办法 将前面导入的excel的列明更改下和系统选项集字段的属性名不同,再对列值

实现excel导入导出功能,excel导入数据到页面中,页面数据导出生成excel文件

今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多都是以json数据填充的.在导入excel填充json数据到页面时,真的让我差点吐血了.在做这个导入导出的时候,那一个礼拜都是黑暗的. 好了,废话不多说了,我今天就给大家展示这个两个功能的核心点,excel生成json数据和json数据生成excel文件. 一:从上传文件到服务器,后台java解析,

MVC3 Excel导入数据到sql Server数据库

MVC Excel导入到数据库,我们客户有一个固定的Excel,每个月都让我手动录入到库内(一开始不会SQL的导入)一两次我还好,蛮乐意的后来多了,我就使用了SQL自带的导入,可是每个月都这样,就太恶心了,为了凸显我是一个程序员,我跟项目经理提出,做一个页面上传Excel文件的页面,然后保存到数据库,让客户上传,天天上传都可以,不要每个月找我一次,而且客户还是个女的,最让我不开心的是她还那么土,然后项目经理说既然是你想出来的,那么你就自己写,我化石了,则个则.............ge.我是一

关于导入数据到Excel中对数据库进行去重以及对导入的Excel文件进行去重

插入到数据库去重: 1.将你循环读取的List进行遍历 2.在你即将插入到数据库的方法之前获取你需要查询的数据,执行查询方法 1 devList=deviceDao.findDevice(device.getRfid()); 2 if(devList.size()>0){ 3 messageStr = "数据重复,请重新导入!"; 4 5 }else{ 6 deviceDao.save(device); 7 messageStr = "数据导入成功!"; 8

Asp.NET Excel导入数据返回JSON字符

前端创建ID为ExcelDy的一个按钮 以及 一个有导入按钮的窗体 <a id="ExcelDy" class="left disabled" href="javascript:void(0)"><span> <img alt='' src='../images/primeval/import.bmp' /></span>导入入库</a> <span class="lef