NPOI读取Excel,导入数据到Excel练习01
NPOI 2.2.0.0,初级读取导入Excel
1.读取Excel,将数据绑定到dgv上
private void button1_Click(object sender, EventArgs e)
{
List<Book> books = new List<Book>();
//1.读取Excel文件
using (FileStream fsReder = File.OpenRead("练习.xlsx"))
{
//2.创建工作簿
IWorkbook wk = new XSSFWorkbook("练习.xlsx");
//IWorkbook wk=new XSSFWorkbook(fsReder);
//获取第一个工作表
ISheet sheet = wk.GetSheetAt();
//3.遍历每一行,行和列的索引都是从0开始
for (int i = ; i < sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i);
//MessageBox.Show(row.GetCell(0).ToString());
//4.读取每一行的数据,加到对象中
books.Add(new Book()
{
Name = row.GetCell().ToString(),
One = row.GetCell().ToString(),
Two = row.GetCell().ToString(),
Three = row.GetCell().ToString(),
Four = row.GetCell().ToString(),
Five = row.GetCell().ToString(),
Six = row.GetCell().ToString(), });
}
}
//5.绑定数据
dgv.DataSource = books;
dgv.AutoGenerateColumns = false;
dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
MessageBox.Show("操作完成");
}
2.将数据导入到Excel中
private void button2_Click(object sender, EventArgs e)
{
List<Book> books = new List<Book>()
{
new Book() {Name = "火影忍者",One ="",Two = "",Three = "",Four = "",Five = "",Six = ""},
new Book() {Name = "海贼王", One ="",Two = "",Three = "",Four = "",Five = "",Six = ""},
new Book() {Name = "死神",One ="",Two = "",Three = "",Four = "",Five = "",Six = ""},
new Book() {Name = "游戏王",One ="",Two = "",Three = "",Four = "",Five = "",Six = ""},
};
//1.创建工作簿
using (FileStream fsWrite = File.OpenWrite("1.xlsx"))
{
IWorkbook wk = new XSSFWorkbook();
//2.创建第一个工作表
ISheet sheet = wk.CreateSheet("第一张表");
//第一行设置标题
IRow rowHead = sheet.CreateRow(); rowHead.CreateCell().SetCellValue("图书名");
rowHead.CreateCell().SetCellValue("一月");
rowHead.CreateCell().SetCellValue("二月");
rowHead.CreateCell().SetCellValue("三月");
rowHead.CreateCell().SetCellValue("四月");
rowHead.CreateCell().SetCellValue("五月");
rowHead.CreateCell().SetCellValue("六月"); //3.在工作表的最后一行下,循环创建工作表的每一行,添加数据
for (int i = ; i < books.Count; i++)
{
IRow row = sheet.CreateRow(i);
row.CreateCell().SetCellValue(books[i].Name);
row.CreateCell().SetCellValue(books[i].One);
row.CreateCell().SetCellValue(books[i].Two);
row.CreateCell().SetCellValue(books[i].Three);
row.CreateCell().SetCellValue(books[i].Four);
row.CreateCell().SetCellValue(books[i].Five);
row.CreateCell().SetCellValue(books[i].Six);
}
wk.Write(fsWrite);
} MessageBox.Show("操作完成");
}
NPOI读取Excel,导入数据到Excel练习01的更多相关文章
- Excel导入数据到Sql server 中出错:“文本被截断,或者一个或多个字符在目标代码页中没有匹配项”
从Excel导入数据到Sql server 时,由于表中的数据有的很长,导入时出现如下错误(如果数据不是很长,255内以内,则不会出现错误): 出错原因: SQL Server的导入导出为了确定数据表 ...
- vue Excel导入,下载Excel模板,导出Excel
vue Excel导入,下载Excel模板,导出Excel vue Excel导入,下载Excel模板 <template> <div style="display: ...
- Open XML操作Excel导入数据
项目中发现使用OleDb(using System.Data.OleDb)相关对象处理Excel导入功能,不是很稳定经常出问题,需要把这个问题解决掉.项目组提出使用OpenXML来处理Excel的导入 ...
- 【Kettle】Java借助Kettle将Excel导入数据
示例功能(仅供测试): 在JAVA项目中,将数据从Excel文件导入数据库中.实现该能有多种方法,而本例则是“不走寻常路”,尝试借助Kettle实现数据导入. 原理: Java中调用存储在Kettle ...
- 关于Vue+iview的前端简单的导入数据(excel)
前一段时间项目经历了纯前端处理导入excel文件并处理等问题,数据量大的时候时间上长的一比,三千条数据需要三四秒甚至更长,不管产品咋想的,具体做法为: 首先下载一个这玩意: 进行简单封装一下: < ...
- C#实现Excel模板导出和从Excel导入数据
午休时间写了一个Demo关于Excel导入导出的简单练习 1.窗体 2.引用office命名空间 添加引用-程序集-扩展-Microsoft.Office.Interop.Excel 3.封装的Exc ...
- 项目经验之:再来一章:excel导入数据 封装成最棒的不容易!!!
我见过很的系统,包括OA,ERP,CRM等,在常用的功能当中,从外部导入数据是最常用到的.因为很多客户需要以excel的形式提供数据,,这样的方式我们又如何做呢, 大家最常见的做法可能是这样的,在需要 ...
- 实现excel导入导出功能,excel导入数据到页面中,页面数据导出生成excel文件
今天接到项目中的一个功能,要实现excel的导入,导出功能.这个看起来思路比较清楚,但是做起了就遇到了不少问题. 不过核心的问题,大家也不会遇到了.每个项目前台页面,以及数据填充方式都不一样,不过大多 ...
- Dynamics CRM EXCEL导入数据字段类型为选项集时的注意事项
在开始先展示下CRM的导入数据涉及选项集字段时的一个问题 下图是选项集字段的属性 下图是我要导入的excel中的列值,可以看出列明和字段名是一致的,而列值却不是选项集中已有的选项 在导入校验时,只要字 ...
- C# Excel导入数据
表 表的创建脚本 CREATE TABLE [dbo].[TB_PROJECTS_New1]( , ) NOT NULL, ) NULL, ) NULL, , ) NULL, , ) NULL, , ...
随机推荐
- dedecms 分页样式
<div class="dede_pages"> <ul class="pagelist"> {dede:pagelist lis ...
- Android API Level与sdk版本对照表
API等级1: Android 1.0 API等级2: Android 1.1 Petit Four 花式小蛋糕 API等级3: Android 1.5 Cupcake 纸杯蛋糕 API等级4: An ...
- Win7构造wifi热点【Written By KillerLegend】
1:Win+R打开DOS,输入以下命令然后回车,不要关闭该DOS窗口: netsh wlan set hostednetwork mode = allow ssid =你的wifi热点名字 key ...
- 隐藏wmware到系统托盘
[此方法是百度到的,经整理放在这里以防忘记.] 1.打开VMware Authorization Service服务.控制面板--管理工具--服务,在里面找到VMware Authorization ...
- IIS支持PHP
1. 解压php-5.2.6.zip到D:\php5,找到php.ini-dist改名为php.ini并将它放到C:\WINDOWS目录下. 2. 将D:\ php5目录下的libmcrypt.dll ...
- Sybase ASE报错:server Error: 8242, Severity: 16, State: 1
昨天上午,同事反映某系统在执行存储过程的过程中报错了,报错的信息异常如下: 05:00000:00009:2014/06/09 15:45:30.34 server Error: 8242, Seve ...
- Linq to XML 之XElement的Descendants方法的新发现
C#操作XML的方法有很多,但个人认为最方便的莫过于Linq to XML了,特别是XElement的Descendants方法是我最常用的一个方法. 这个方法可以根据节点名(Name)找到当前调用的 ...
- SNV ConnerStore使用说明
1. 上传自己新建的文件新建的类文件 后面的 会有A标示要先 Add To Working copy 再点击提交 2. 上传第三方库时 默认SVN是忽略.a文件的要找到.a文件把他设置成不是忽略的通 ...
- iOS 10的23个隐藏新特性-b
上周iOS 10正式版推送后,24小时的更新率已经超过15%,实在惊人.虽然有着初期变砖.5S6卡顿.移动VoLTE无法使用.美版无信号等BUG,但不可忽视的是,iOS 10还是带来了很多从前没有的功 ...
- .NET核心代码保护策略-隐藏核心程序集
经过之前那个道德指责风波过后也有一段时间没写博客了,当然不是我心怀内疚才这么久不写,纯粹是程序员的通病..怎一个懒字了得,本来想写一些长篇大论反讽一下那些道德高人的.想想还是算了,那样估计会引来新一波 ...