NPOI:操作总结

这篇博客介绍了如何使用NPOI库操作Excel,包括创建Workbook、工作表、行和单元格,以及对单元格进行操作的方法。作者还封装了写单元格和复制单元格的功能,方便使用。此外,讨论了设置行高、列宽、单元格对齐方式和字体样式等细节。博客最后提到了代码封装的局限性,但提供了常用功能的实现。
摘要由CSDN通过智能技术生成
1.套路

  使用了NPOI一段时间,也慢慢了解了操作的流程,或者说套路:

  a.创建Workbook:

HSSFWorkbook Workbook = new HSSFWorkbook();

  b.在Workbook中创建一个工作表并获得该工作表的索引(暂且这么说吧):

HSSFSheet sheet = (HSSFSheet)Workbook.CreateSheet("sheet1");// 前面必须要加强制转换

  c.在工作表中创建行然后获得该行的索引:

HSSFRow row = (HSSFRow)sheet.CreateRow(0); // 0是指第一行,可以直接创建其他行,如创建第4行而不用先创建前面的

  d.在行中创建一个单元格并获得该单元格的索引:

HSSFCell cell = new (HSSFCell)row.CreateCell(0); // 该处的0和上面所说一样

  e.然后就可以愉快地对单元格进行操作了,看起来是一种递进方式,这样操作起来也方便。

2.封装的写单元格 WriteCell

  为了自己使用方便,我把设置单元格的值的功能封装了一下,可以实现随意按照行列位置写,单元格或者行的创建都封装了,只需要引用工作表:

private static void WriteCell(int row, int col, string val, ref HSSFSheet sheet)
        {
            if (sheet.GetRow(row - 1) == null) // 判断行是否被创建
            {
                HSSFRow t_row = (HSSFRow)sheet.CreateRow(row - 1);

                HSSFCell t_cell = (HSSFCell)t_row.CreateCell(col - 1);

                t_cell.SetCellValue(val);
            }
            else
            {
                HSSFRow t_row = (HSSFRow)sheet.GetRow(row - 1);

                if (t_row.GetCell(col - 1) == null) // 判断列(单元格)是否被创建
                {
                    HSSFCell t_cell = (HSSFCell)t_row.CreateCell(col - 1);

                    t_cell.SetCellValue(val);
                }
                else
                {
                    HSSFCell t_cell = (HSSFCell)t_row.GetCell(col - 1);

                    t_cell.SetCellValue(val);
                }
            }
        }

3.封装的复制单元格 CopyCell

  将一个工作表中的某个单元格的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值