poi过滤操作后产生新的sheet

public Sheet filterSheet(Sheet sheetToFilter){
		if(sheetToFilter == null){
			System.out.println("sheetToFilter is null!");
			return null;
		}
		int lastRowNum = sheetToFilter.getLastRowNum();
		int rowIndexI = 0;
		int rowIndexJ = 0;
		while(rowIndexI<=lastRowNum){
			Row row = sheetToFilter.getRow(rowIndexI);
			if(row != null){
				if(isVaildRow(row)){
					if(rowIndexI>rowIndexJ){
						shiftRows(rowIndexI,rowIndexI,rowIndexJ-rowIndexI);
					}
					rowIndexJ++;
				} else{
					removeRow(row);
				}
			}
			rowIndexI++;
		}

	}

  

poi过滤操作后产生新的sheet,布布扣,bubuko.com

时间: 2024-10-23 22:54:11

poi过滤操作后产生新的sheet的相关文章

Apache POI组件操作Excel,制作报表(二)

现在来看看Excel的基本设置问题,以2007为例,先从工作簿来说,设置列宽,因为生成表格列应该固定,而行是遍历生成的,所以可以在工作簿级别来设置列宽,那么可以如下来进行.    首先是创建工作簿和工作表了: 1 // 创建Excel2007工作簿对象 2 XSSFWorkbook workbook2007 = new XSSFWorkbook(); 3 // 创建工作表对象并命名 4 XSSFSheet sheet = workbook2007.createSheet("学生信息统计表&quo

如何对Backbone.Collection进行过滤操作

首先我想说的是这篇文章的题目起的很怪,因为我不知道起个什么名字比较好.渲染列表是我们应用中最常见的操作了吧,在运用Backbone的应用中,我们一般会把列表作为一个Collcetion,然后指定一个View去显示这个Collection,很方便.但当你需要对一个集合进行过滤操作,只显示Collection中符合条件的那部分呢? 渲染一个内存中存在的Collection毫无疑问很简单,因为Backbone提供了一些操作的方法.但是当对一个Collection进行过滤操作之后,渲染过滤之后的结果你就

Java开发中使用POI库操作Excel

首先,我们要重点说明一下Excel的两中不同的格式,这个直接影响到我们在使用POI操作Excel的方式.一定要先明确你要操作的Excel所使用的版本,切记! 1,Excel的两种格式区别 a),*.xls文件是使用Microsoft Excel 2003或之前版本保存的电子表格,使用的存储格式为BIFF (Binary Interchange File Format),一种特殊的二进制格式文件. b)*.xlsx文件是使用Microsoft Office 2007 或后续版本保存的电子表格,使用

VMware克隆Linux系统后,新系统网络问题

VMware克隆Linux系统后,新系统网络问题Device eth0 dose not seem to be present的解决方法. 今天学习Linux到一定阶段了,需要用到二台机器同时开启,于是用VMware克隆了开始正常使用的第一台Linux系统.克隆操作还是很简单的,一会好了,重新启动后,想使用xshell连接,先看了克隆出来的新机器,就叫cloner吧,ifconfig只有loop口是正常工作,于是使用service network restart重启网络服务看看好没好,结果出现下

视频会议管理系统操作步骤(新)

会议管理系统操作步骤 登陆,在浏览器中输入睿致管理系统IP地址 10.174.200.26,然后回车. 输入用户名,密码以及验证码,(以洛阳为例)选择登陆: 成功登陆: 建立会议,选择会议预约: 召开即时会议,点击:即时视频会议: 1)     填写会议名称. 2)     选择合适的会议时间长度,不能短于实际会议时间,建议长于实际会议时间2小时以上. 3)     选择参加会议终端,点击“河南省邮政公司”后面的“全部展开”. 4)     选择主会场,点击主会场后面的下拉箭头,选择主会场,一般

Trident的过滤操作

1.过滤操作 只是判断某个tuple是否保留 无需跨网络,无需跨分区 不会改变tuple的结构,只是改变tuple的数量 2.需求 过滤掉不是订单的tuple. 其中订单中包含"IBEIfeng.gif". 3.主驱动类 先过滤 后打印 1 package com.jun.trident; 2 3 import backtype.storm.Config; 4 import backtype.storm.LocalCluster; 5 import backtype.storm.Sto

NGINX编译安装后添加新模块的方法

刚忙完研发又有新的需求过来,测试服务器的nginx需要有HttpUpstreamRequestHashModule和HttpStubStatusModule:擦!安装软件环境时怎么不说清楚:妹的,悲剧. 测试服务器崩溃的是不是我安装的软件,天啊.赶紧搞吧!!! 环境:centos 6.4 64位 编译安装nginx 1:查看nginx版本和安装时间带的具体参数  /usr/local/nginx/sbin/nginx  -V 2:下载相应的版本的nginx源码包[nginx-1.5.11.tar

表结构更改后或新增加数据后同步到表中

select 'insert into mtx_system_module(module_id,module_code,module_name,module_note,create_date,version)values('+cast(moduleid as varchar(10))+','''+ObjectID+''','''+Name+''','''+isnull(Note,'')+''',NOW(),1);' from AppModules where subsystem=1 and Pa

MySQL 误操作后如何快速恢复数据~!~!~

基本上每个跟数据库打交道的程序员(当然也可能是你同事)都会碰一个问题,MySQL误操作后如何快速回滚?比如,delete一张表,忘加限制条件,整张表没了.假如这还是线上环境核心业务数据,那这事就闹大了.误操作后,能快速回滚数据是非常重要的. 传统解法 用全量备份重搭实例,再利用增量binlog备份,恢复到误操作之前的状态.然后跳过误操作的SQL,再继续应用binlog.此法费时费力,不值得再推荐. 利用binlog2sql快速闪回 首先,确认你的MySQL server开启了binlog,设置了