POI中excle样式怎么写
POI中可能会用到一些需要设置EXCEL单元格格式的操作小结:
先获取工作薄对象:
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFCellStyle setBorder = wb.createCellStyle();
一、设置背景色:
setBorder.setFillForegroundColor((short) 13);// 设置背景色
setBorder.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
二、设置边框:
public static CellStyle getStyle(Workbook wb ){
CellStyle style = wb.createCellStyle();
style.setBorderBottom(CellStyle.BORDER_THIN);
style.setBorderLeft(CellStyle.BORDER_THIN);
style.setBorderRight(CellStyle.BORDER_THIN);
style.setBorderTop(CellStyle.BORDER_THIN);
return style;
}
三、设置居中:
style.setAlignment(CellStyle.ALIGN_CENTER);//水平居中
style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);//垂直居中
四、设置字体:
HSSFFont font = wb.createFont();
font.setFontName("黑体");
font.setFontHeightInPoints((short) 16);//设置字体大小
HSSFFont font2 = wb.createFont();
font2.setFontName("仿宋_GB2312");
font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗体显示
font2.setFontHeightInPoints((short) 12);
setBorder.setFont(font);//选择需要用到的字体格式
五、设置列宽:
sheet.setColumnWidth(0, 3766); //第一个参数代表列id(从0开始),第2个参数代表宽度值
六、设置自动换行:
setBorder.setWrapText(true);//设置自动换行
七、合并单元格:
Region region1 = new Region(0, (short) 0, 0, (short) 6);
//参数1:行号 参数2:起始列号 参数3:行号 参数4:终止列号
sheet.addMergedRegion(region1);
八、加边框
HSSFCellStyle cellStyle= wookBook.createCellStyle();
cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
cellStyle.setBorderBottom(HSSFCellStyle.BorderBORDER_MEDIUM);
cellStyle.setBottomBorderColor(HSSFColor.BLACK.index);
cellStyle.setBorderLeft(HSSFCellStyle.BORDER_MEDIUM);
cellStyle.setLeftBorderColor(HSSFColor.BLACK.index);
cellStyle.setBorderRight(HSSFCellStyle.BORDER_MEDIUM);
cellStyle.setRightBorderColor(HSSFColor.BLACK.index);
cellStyle.setBorderTop(HSSFCellStyle.BORDER_MEDIUM);
cellStyle.setTopBorderColor(HSSFColor.BLACK.index);
一个不完整的例子:
public static HSSFWorkbook generateExcelFiles(File file, StatisticQueryBean bean, List<WGLineBean> beans) {
HSSFWorkbook wb = null;
try {
InputStream inputStream = new FileInputStream(file);
wb = new HSSFWorkbook(inputStream);
HSSFSheet sheet = wb.getSheet("sheet1");
sheet.getRow(2).getCell(2).setCellValue(bean.getCarType());
sheet.getRow(2).getCell(4).setCellValue(bean.getArea());
sheet.getRow(2).getCell(6).setCellValue(bean.getStartTime() + "-" + bean.getEndTime());
CellStyle style = getStyle(wb);
int row = 4;
for (WGLineBean model : beans) {
HSSFRow rows = sheet.createRow(row);
int col = 0;
int quantity;
try {
quantity = model.getTotalQuantity();
} catch (Exception e) {
e.printStackTrace();
quantity = 0;
}
for (int i = 0; i < 15; i++) {
HSSFCell cell = rows.createCell(i);
cell.setCellStyle(style);
}
sheet.getRow(row).getCell(col++).setCellValue(model.getRecordTime());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection1());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection1());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection2());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection2());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection3());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection3());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection4());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection4());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection5());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection5());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection6());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection6());
sheet.getRow(row).getCell(col++).setCellValue(quantity - model.getSum_detection7());
sheet.getRow(row).getCell(col++).setCellValue(model.getSum_detection7());
row++;
}
} catch (Exception e) {
e.printStackTrace();
return wb;
}
return wb;
}
POI中excle样式怎么写的更多相关文章
- 嵌入式css样式,写在当前的文件中
现在有一任务,把下面的“超酷的互联网”.“服务及时贴心”.“有趣易学”这三个短词文字字号修改为18px. 如果用内联式css样式的方法进行设置将是一件很头疼的事情(为每一个<span>标签 ...
- 如何javascript获取css中的样式
obj.style.height只能获取行间样式,但是我们要怎么获取写在css文件中的样式呢? 首先我们要用一个新的方法currentStyle.这个方法由current和style两个单词组成意思是 ...
- Vue学习笔记七:Vue中的样式
目录 两种样式 class样式 内联样式 两种样式 Vue中使用样式方式有两种,一种是class样式,一种是内联样式也就是style class样式 class样式使用的方式有5种,HTML如下 &l ...
- 防止vue文件中的样式出现‘污染’情况(html5 scoped特性)
近期在项目中出现了vue样式污染的情况: 一个页面刚进去时样式不正常,刷新之后,样式才才达到预期那样 在vue中,如果把样式写在vue文件的 style中,可能会出现样式污染的情况,这是要把写样式的标 ...
- 3-5 Vue中的样式绑定
Vue中的样式绑定: 本案例,简单设计一个<div>的点击绑定事件来改变div的样式效果 方法一:[class] ①(class和对象的绑定) //如上,运用class和一个对象的形式来解 ...
- Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths
一:Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths 系统中需要导出excle签收单,excle模板是预设好 ...
- javascript总结40:DOM中操作样式的两种方式
1 DOM中操作样式的两种方式 1 通过元素的style属性 注意: 通过style属性设置样式时,css中要写单位的属性,在js代码中也要加单位 //html <div id="bo ...
- 小程序中WXSS样式控制
WXSS WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式. WXSS 用来决定 WXML 的组件应该怎么显示. 为了适应广大的前端开发者,WXSS 具 ...
- POI 设置Excel样式(转)
POI 设置Excel样式 POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSh ...
随机推荐
- JDK1.8 LongAdder 空间换时间: 比AtomicLong还高效的无锁实现
我们知道,AtomicLong的实现方式是内部有个value 变量,当多线程并发自增,自减时,均通过CAS 指令从机器指令级别操作保证并发的原子性. // setup to use Unsafe.co ...
- WAN口和LAN 口有什么区别
WAN口不能够用来连接电脑. LAN(1.2.3.4)口只能够用来连接电脑. 拓展资料 路由器(Router),是连接因特网中各局域网.广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径, ...
- plsql导入.dmp, .sql步骤
plsql导入.sql和.dmp文件时,会经常用到,对于初学者来说可能没有那么简单,毕竟oracle数据库比较麻烦. 下面是我自己导入.sql和.dmp文件的步骤. 1.导入.sql文件(sql文件是 ...
- Redis Sentinel实现的机制与原理详解
序言 Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案.实际上这意味着你可以使用Sentinel模式创建一个可以不用人为干预而应对各种故障的Redis部署. 它的主要功能有以 ...
- readlink 获取进程的绝对路径
readlink可以获取exe所在的路径(直接和进程关联);无法获得so的路径,so路径可以用dladdr,参考另一篇文章linux系统中有个符号链接:/proc/self/exe 它代表当前程序,所 ...
- 【EBook】-NO.161.微服务.1 -【微服务架构与实践】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- 【Common】-NO.122.common.1 - pv、uv、ip,tps、qps、rps术语
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- 24个 CSS 高级技巧合集
上期入口:史上最全实用网络爬虫合集! 1.使用CSS复位 CSS复位可以在不同的浏览器上保持一致的样式风格.您可以使用CSS reset 库Normalize等,也可以使用一个更简化的复位方法: ** ...
- Docker:从头开始基于CentOS-Minimal安装Docker
基础环境:win10+vmware 14 一.CentOS-Minimal安装 虚拟机安装CentOS-Minimal的步骤不多说,网络选Net,硬件不需要的什么声卡打印机全都删掉没什么问题,然后ce ...
- Unity 利用UGUI打包图集,动态加载sprite资源
今天做了一个UI界面,这个界面是好友界面,该界面上有若干个好友item. 需要对每个tem的头像对象(image)动态显示对应的头像.尝试利用UGUI的图集来加载,具体实现如下: 1.首先,需要知道S ...