上次已经为大家简述过java中Excel字体的设置,背景和纹理的操作,今天继续为大家介绍与Excel有关的知识。今天要简述的就是java中Excel设置宽高怎么做?以及单元格的日期怎么判断?一起来看看吧。
一、首先为大家介绍的是,在java中Excel的宽度和高度的设置。如下。
HSSFSheet sheet = workbook.createSheet("Test"); // 创建工作表(Sheet) HSSFRow row = sheet.createRow(1); HSSFCell cell = row.createCell(1); cell.setCellValue("123456789012345678901234567890"); sheet.setColumnWidth(1, 31 * 256); //设置第一列的宽度是31个字符宽度 row.setHeightInPoints(50); //设置行的高度是50个点
在上面可以看出一个奇怪的点,setColumnWidth的第二个参数要乘以256,这是为什么?其实,原因是这个参数的单位是1/256个字符宽度,也意味着把B列的宽度设置为了31个字符。
另外设置行高使用HSSFRow对象的setHeight和setHeightInPoints方法,它们的区别在于setHeightInPoints的单位是点,而setHeight的单位是1/20个点,也也意味着setHeight的值永远是setHeightInPoints的20倍。
所以可以使用HSSFSheet.setDefaultColumnWidth、HSSFSheet.setDefaultRowHeight和HSSFSheet.setDefaultRowHeightInPoints方法来设置默认的列宽或者行高。
二、再来判断单元格是否为日期
判断单元格是否为日期类型,使用的是DateUtil.isCellDateFormatted(cell)方法,举例说明。
HSSFCell cell = row.createCell(1); cell.setCellValue(new Date()); //设置日期数据 System.out.println(DateUtil.isCellDateFormatted(cell)); //输出:false HSSFCellStyle style = workbook.createCellStyle(); style.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm")); cell.setCellStyle(style); //设置日期样式 System.out.println(DateUtil.isCellDateFormatted(cell)); //输出:true
以上就是关于java中Excel设置宽高以及判断单元格的日期的一些方法了。如果你对java知识感兴趣,想要了解更多java基础以及常见问题,敬请关注奇Q工具网。
推荐阅读: