NPOI-真正删除行(非清空数据)的方法

作者:vkvi 来源:千一网络(原创) 日期:2012-2-17

NPOI 在 .NET 中非常快速地操作 Excel,当我们需要删除某一行时,我们发现有个方法叫 RemoveRow,但是正如它的名字一样 Remove,和 Delete 是有区别的,所以 RemoveRow 只能清空行数据,不能实现删除行。

真正的做法是通过向上移动行来实现的,听起来有些不可思议。

采用 ShiftRows 向上移动,第三个参数为正数表示向下移动,为负数表示向上移动,为负数的话只能为 -1,即一次只能上移一行。前两个参数是表示要移动的行的索引值范围。

上述代码实现的是 Excel 表有个头子占 headRowsCount,有个脚脚占 1 行,中间有许多空行,其中填充的数据数量是 dv.Count,现在就是要删除这些空行中没有被添加的行。

注意 i 的范围,特别是最小值,由于在 NPOI 编辑中第一行用 0 表示,所以 i 的最小值其实是第二个空行。为什么不是第一个空行呢?因为我们可以看到移了第二个空行后,实际第一个空行是被 Excel 的脚脚占着了,没必要再移了,这点要注意。

总之,真实体验一把可能会更好理解。

你前面那位网友看了:百度 hao123 与 hao123.cn 事件-Alexa 数据

▲▲▲欢迎转载传播本站原创文章,请保留来源。▲▲▲

本站永远终止与捏造“罪名”不支付广告费的某度联盟合作。

文章评论
  • 1 楼:评论
    楼上的代码亲自试验过么??
  • 2 楼:评论
    试验过的。
  • 3 楼:评论
    就不能截图出来演示下吗,那么多口水还是没到G点啊。
标题:必填
内容: