关于poi3.17版本的一些格式设置操作问

最近在使用poi操作excel的时候遇到了一些问题,分享一下其中一些坑的点。

网上很多版本对于poi中样式中样式设置都是poi之前的操作,在poi3.17版本中并不能直接使用,自己给自己挖了一个大坑;

举个例子,在poi导出设置单元格样式的居中问题时候,网上大部分的操作代码如下:

    

  1. XSSFCellStyle cellStyle = wb.createCellStyle();   
  2. cellStyle.setAlignment(XSSFCellStyle.ALIGN_CENTER); // 居中  
  3. cellStyle.setVerticalAlignment(XSSFCellStyle.VERTICAL_CENTER);//垂直 

但是使用 poi3.17版本的时候,系统会报没有 ALIGN_CENTER,VERTICAL_CENTER 这个参数,一开始以为是poi 3.17导的不完全,然后我就把所有的包都重新打了一遍,然后完全没有解决,网上百度解决方法,几乎找不动其他的方式,poi3.17的操作手册也并没有找到,最后终于在一位博主的分享中(感谢阿炳的博客园https://www.cnblogs.com/acm-bingzi/p/poi1.html。原文链接),找到了解决方案,实际实现代码如下:

  1. XSSFCellStyle cellStyle = wb.createCellStyle();   
  2. cellStylestyle.setAlignment(HorizontalAlignment.CENTER);// 居中  
  3. cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);;//垂直 

同时在设置边框时候,也有相应的同样问题,HSSFCellStyle 中同样报错没有其中的值

  1. cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下边框    
  2. cellStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左边框    
  3. cellStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上边框    
  4. cellStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右边框    

最后修改方案如下,接用BordyStyle中的值来修改;

  1. cellStyle.setBorderBottom(BorderStyle.THIN); //下边框    
  2. cellStyle.setBorderLeft(BorderStyle.THIN);//左边框    
  3. cellStyle.setBorderTop(BorderStyle.THIN);//上边框    
  4. cellStyle.setBorderRight(BorderStyle.THIN);//右边框    

供大家参考分享。

  • 21
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值