poi-合并单元格

3 篇文章 0 订阅
package pyl.com.test;
import org.apache.poi.ss.usermodel.CellStyle;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.RegionUtil;
import pyl.com.utils.Tools;
public class TestExcel {
/**
* 创建合并单元格

* @param sheet
*/

public static void createRangeCell(Sheet sheet) {

//sheet.getNumMergedRegions();

//sheet.getMergedRegion(i);获取合并单元格

int rowNum = 0;
int cellNum = 0;
CellRangeAddress region = new CellRangeAddress(rowNum, rowNum, cellNum,
cellNum);
sheet.addMergedRegion(region);
}


/**
* 设置合并单元格样式

* @param region
* @param sheet
* @param wb
*/
public static void setRegionBorder(CellRangeAddress region, Sheet sheet,
Workbook wb) {
if (Tools.isNotNull(region) && Tools.isNotNull(sheet)
&& Tools.isNotNull(wb)) {
RegionUtil.setBorderTop(CellStyle.BORDER_THIN, region, sheet, wb);
RegionUtil.setBorderRight(CellStyle.BORDER_THIN, region, sheet, wb);
RegionUtil
.setBorderBottom(CellStyle.BORDER_THIN, region, sheet, wb);
RegionUtil.setBorderLeft(CellStyle.BORDER_THIN, region, sheet, wb);
}
}

}


package pyl.com.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Random;
import java.util.UUID;
/**
 * 工具类
 * 
 * @author Administrator
 *
 */
public abstract class Tools {
/**
* 判断参数是否为空,不为空返回false, 为空返回true

* @param obj
* @return
*/
public static boolean isNotNull(Object obj) {
return obj != null && !"null".equals(obj) && !"".equals(obj);
}


/**
* isNull

* @param str
* @return
*/
public static boolean isNull(String str) {
return str == null || "".equals(str.trim());
}


/**
* isNotNull

* @param str
* @return
*/
public static boolean isNotNull(String str) {
return str != null && !"".equals(str.trim());
}


public static boolean isInArr(String str, String[] arr) {
boolean flag = false;
if (isEmpty(arr) || isNull(str)) {
return flag;
}
for (int i = 0; i < arr.length; i++) {
if (str.equals(arr[i])) {
flag = true;
break;
}
}
return flag;
}


/**
* isEmpty

* @param array
* @return
*/
public static boolean isEmpty(Object[] array) {
return array == null || array.length == 0;
}


/**
* isNotEmpty

* @param array
* @return
*/
public static boolean isNotEmpty(Object[] array) {
return array != null && array.length > 0;
}


/**
* isEmpty

* @param list
* @return
*/
public static boolean isEmpty(List<?> list) {
if (list == null || list.isEmpty()) {
return true;
}
return false;
}


/**
* 判断参数是否为空,为空返回ture, 不为空返回false

* @param obj
* @return
*/
public static boolean isNull(Object obj) {
return obj == null || "null".equals(obj);
}


/**
* 方法描述:格式化时间为字符串

* @param type
* @param time
* @return
*/
public static String formatDateToStr(int type, Date time) {
if (time == null) {
return "";
}
String format = getPattern(type);
return new SimpleDateFormat(format)
.format(Long.valueOf(time.getTime()));
}


/**
* 格式化字符串为时间

* @param type
* @param time
* @return
* @throws ParseException
*/
public static Date formateStrToDate(int type, String time)
throws ParseException {
if (Tools.isNull(time)) {
return null;
}
String format = getPattern(type);
return new SimpleDateFormat(format).parse(time);
}


/**
* getPattern

* @param formatIndex
* @return
*/
public static String getPattern(int formatIndex) {
String format = null;
switch (formatIndex) {
case -2:
format = "HH:mm:ss.S";
break;
case -1:
format = "yyyy-MM-dd HH:mm:ss.S";
break;
case 0:
format = "yyyy-MM-dd HH:mm:ss";
break;
case 1:
format = "yyyy-MM-dd 00:00:00";
break;
case 2:
format = "yyyy-MM-dd 23:59:59";
break;
case 3:
format = "yyyy-MM-dd";
break;
case 4:
format = "yyyy-MM";
break;
case 5:
format = "yyyy-MM-dd HH:mm:ss";
break;
case 6:
format = "yyyy-01-01 00:00:00";
break;
case 7:
format = "yyyy-12-31 23:59:59";
break;
case 8:
format = "yyyy-MM-01 00:00:00";
break;
case 10:
format = "yyyyMMddHHmmss";
break;
case 11:
format = "yyyyMMddHHmmssS";
break;
case 12:
format = "yyyy年MM月dd日";
break;
case 13:
format = "yyyyMMdd-HHmmssS";
break;
default:
format = "yyyy-MM-dd HH:mm:ss";
}
return format;
}


/**
* 创建uuid

* @return
*/
public static String createUUID() {
return UUID.randomUUID().toString().replace("-", "");
}


/**
* 获取通用格式时间对象

* @return
* @throws ParseException
*/
public static Date getCommonDate() throws ParseException {
return Tools.formateStrToDate(0, Tools.formatDateToStr(0, new Date()));
}


/**
* startTimeLowerThanEndTime

* @param type
* @param startDate
* @param endDate
* @return
* @throws ParseException
*/
public static boolean startTimeLowerThanEndTime(int type, String startDate,
String endDate) throws ParseException {
Date startD = Tools.formateStrToDate(type, startDate);
Date endD = Tools.formateStrToDate(type, endDate);
if (startD.getTime() > endD.getTime()) {
return true;
}
return false;
}


/**

* @return
*/
public static String createProcessCode() {
String ap = "0123456789QWERTYUIOPLKJHGFDSAZXCVBNM";
char[] charArray = ap.toCharArray();
Random r = new Random();
int nextInt = 0;
String code = "";
for (int i = 0; i < 8; i++) {
nextInt = r.nextInt(ap.length());
code = code + charArray[nextInt];
}
return code + "-" + System.currentTimeMillis();
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值