NPOI很早就出名了,但是一直以为第三方的不可能有微软的效率高,所以一直都用COM来处理EXCEL。 直到某天处理一个大量数据的EXCEL,发现NPOI生成的数据几乎是1秒内就完成了,比传统方法快了几百倍。 惊喜万分,开始学习NPOI的使用,也希望留下一些东西供别人
NPOI很早就出名了,但是一直以为第三方的不可能有微软的效率高,所以一直都用COM来处理EXCEL。
直到某天处理一个大量数据的EXCEL,发现NPOI生成的数据几乎是1秒内就完成了,比传统方法快了几百倍。
惊喜万分,开始学习NPOI的使用,也希望留下一些东西供别人学习。
今天带来的是第一篇,用NPOI创建一个新的EXCEL文件。
下载地址就不再赘述了。
如果只是简单的处理的话,只需要引用下载压缩包里的
NPOI.dll 和 ICSharpCode.SharpZipLib.dll
两个文件而已。
好了,开始。
第一步,引用空间
HSSFWorkbook wk = new HSSFWorkbook(); //创建一个Sheet ISheet sheet = wk.CreateSheet("例子");
//在第一行创建行 IRow row = sheet.CreateRow(0); //在第一行的第一列创建单元格 ICell cell = row.CreateCell(0);
在NPOI里,IRow和ICell是表格结构里的基本元素,必须先通过Create函数创建后才能使用,不然会报错。
接下来我们可以使用这个函数对单元格赋值。
cell.SetCellValue("测试");
这几种格式的参数,但是不像Excel COM一样支持object。所以赋值的时候必须先做好类型转换。
最后,将做好的这个EXCEL保存到硬盘上。
//打开一个xls文件,如果没有则自行创建,如果存在myxls.xls文件则在创建时不要打开该文件 using (FileStream fs = File.OpenWrite("d:\\excel.xls")) { wk.Write(fs);//向打开的这个xls文件中写入并保存。 }
不需要释放,不需要安装EXCEL。速度极快,实在很方便。