2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > java POI Excel 单元格样式

java POI Excel 单元格样式

时间:2019-01-28 01:11:48

相关推荐

java POI Excel 单元格样式

正如Html需要CSS一样,我们的POI生成的Excel同样需要样式才能更完美的表现我们的数据。下面还是从简单的例子出发,学习和了解POI的样式设计。

一、我的位置。

1 package com.myjava.poi;2 3 import java.io.FileOutputStream;4 import java.util.Date;5 6 import org.apache.poi.hssf.usermodel.HSSFCell;7 import org.apache.poi.hssf.usermodel.HSSFCellStyle;8 import org.apache.poi.hssf.usermodel.HSSFRichTextString;9 import org.apache.poi.hssf.usermodel.HSSFWorkbook;10 import org.apache.poi.ss.usermodel.Cell;11 import org.apache.poi.ss.usermodel.CellStyle;12 import org.apache.poi.ss.usermodel.Row;13 import org.apache.poi.ss.usermodel.Sheet;14 import org.apache.poi.ss.usermodel.Workbook;15 16 public class ExcelStyle {17 18public static void main(String[] args) throws Exception{19 Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿20 Sheet sheet=wb.createSheet("第一个Sheet页"); // 创建第一个Sheet页21 Row row=sheet.createRow(2); // 创建一个行22 row.setHeightInPoints(30);23 24 createCell(wb, row, (short)0, HSSFCellStyle.ALIGN_CENTER, HSSFCellStyle.VERTICAL_BOTTOM);25 createCell(wb, row, (short)1, HSSFCellStyle.ALIGN_FILL, HSSFCellStyle.VERTICAL_CENTER);26 createCell(wb, row, (short)2, HSSFCellStyle.ALIGN_LEFT, HSSFCellStyle.VERTICAL_TOP);27 createCell(wb, row, (short)3, HSSFCellStyle.ALIGN_RIGHT, HSSFCellStyle.VERTICAL_TOP);28 29 FileOutputStream fileOut=new FileOutputStream("D:\\工作簿.xls");30 wb.write(fileOut);31 fileOut.close();32}3334/**35* 创建一个单元格并为其设定指定的对齐方式36* @param wb 工作簿37* @param row 行38* @param column 列39* @param halign 水平方向对其方式40* @param valign 垂直方向对其方式41*/42private static void createCell(Workbook wb,Row row,short column,short halign,short valign){43 Cell cell=row.createCell(column); // 创建单元格44 cell.setCellValue(new HSSFRichTextString("我在这")); // 设置值45 CellStyle cellStyle=wb.createCellStyle(); // 创建单元格样式46 cellStyle.setAlignment(halign); // 设置单元格水平方向对其方式47 cellStyle.setVerticalAlignment(valign); // 设置单元格垂直方向对其方式48 cell.setCellStyle(cellStyle); // 设置单元格样式

}

}

效果显示:

二、我的边框

1 package com.myjava.poi; 2 3 import java.io.FileOutputStream; 4 import java.util.Calendar; 5 import java.util.Date; 6 7 import org.apache.poi.hssf.usermodel.HSSFWorkbook; 8 import org.apache.poi.ss.usermodel.Cell; 9 import org.apache.poi.ss.usermodel.CellStyle;10 import org.apache.poi.ss.usermodel.CreationHelper;11 import org.apache.poi.ss.usermodel.IndexedColors;12 import org.apache.poi.ss.usermodel.Row;13 import org.apache.poi.ss.usermodel.Sheet;14 import org.apache.poi.ss.usermodel.Workbook;15 16 public class Border {17 18public static void main(String[] args) throws Exception{19Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿20 Sheet sheet=wb.createSheet("第一个Sheet页"); // 创建第一个Sheet页21Row row=sheet.createRow(1); // 创建一个行2223Cell cell=row.createCell(1); // 创建一个单元格24cell.setCellValue(4);2526CellStyle cellStyle=wb.createCellStyle(); 27cellStyle.setBorderBottom(CellStyle.BORDER_THIN); // 底部边框28cellStyle.setBottomBorderColor(IndexedColors.BLACK.getIndex()); // 底部边框颜色 29 cellStyle.setBorderLeft(CellStyle.BORDER_THIN); // 左边边框30cellStyle.setLeftBorderColor(IndexedColors.RED.getIndex()); // 左边边框颜色31 32cellStyle.setBorderRight(CellStyle.BORDER_THIN); // 右边边框33cellStyle.setRightBorderColor(IndexedColors.BLUE.getIndex()); // 右边边框颜色 34cellStyle.setBorderTop(CellStyle.BORDER_MEDIUM_DASHED); // 上边边框35cellStyle.setTopBorderColor(IndexedColors.BLACK.getIndex()); // 上边边框颜色3637 cell.setCellStyle(cellStyle);38FileOutputStream fileOut=new FileOutputStream("D:\\Border.xls");39wb.write(fileOut);40fileOut.close();41}42 }

效果显示:

三、我的背景

package com.myjava.poi;2 3 import java.io.FileOutputStream;4 import java.util.Calendar;5 import java.util.Date;6 7 import org.apache.poi.hssf.usermodel.HSSFWorkbook;8 import org.apache.poi.ss.usermodel.Cell;9 import org.apache.poi.ss.usermodel.CellStyle;10 import org.apache.poi.ss.usermodel.CreationHelper;11 import org.apache.poi.ss.usermodel.IndexedColors;12 import org.apache.poi.ss.usermodel.Row;13 import org.apache.poi.ss.usermodel.Sheet;14 import org.apache.poi.ss.usermodel.Workbook;15 16 public class Bg {17 18public static void main(String[] args) throws Exception{19 Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿20 Sheet sheet=wb.createSheet("第一个Sheet页"); // 创建第一个Sheet页21 Row row=sheet.createRow(1); // 创建一个行22 23 Cell cell=row.createCell(1);24 cell.setCellValue("看不清我");25 CellStyle cellStyle=wb.createCellStyle();26 cellStyle.setFillBackgroundColor(IndexedColors.AQUA.getIndex()); // 背景色27 cellStyle.setFillPattern(CellStyle.BIG_SPOTS); 28 cell.setCellStyle(cellStyle);29 30 31 Cell cell2=row.createCell(2);32 cell2.setCellValue("我的前景色与众不同");33 CellStyle cellStyle2=wb.createCellStyle();34 cellStyle2.setFillForegroundColor(IndexedColors.RED.getIndex()); // 前景色35 cellStyle2.setFillPattern(CellStyle.SOLID_FOREGROUND); 36 cell2.setCellStyle(cellStyle2);37 38 FileOutputStream fileOut=new FileOutputStream("D:\\bg.xls");39 wb.write(fileOut);40 fileOut.close();41}42 }

效果显示:

四、合并单元格

package com.myjava.poi;2 3 import java.io.FileOutputStream;4 import java.util.Calendar;5 import java.util.Date;6 7 import org.apache.poi.hssf.usermodel.HSSFWorkbook;8 import org.apache.poi.ss.usermodel.Cell;9 import org.apache.poi.ss.usermodel.CellStyle;10 import org.apache.poi.ss.usermodel.CreationHelper;11 import org.apache.poi.ss.usermodel.IndexedColors;12 import org.apache.poi.ss.usermodel.Row;13 import org.apache.poi.ss.usermodel.Sheet;14 import org.apache.poi.ss.usermodel.Workbook;15 import org.apache.poi.ss.util.CellRangeAddress;16 17 public class GetTogether {18 19public static void main(String[] args) throws Exception{20 Workbook wb=new HSSFWorkbook(); // 定义一个新的工作簿21 Sheet sheet=wb.createSheet("第一个Sheet页"); // 创建第一个Sheet页22 Row row=sheet.createRow(1); // 创建一个行23 24 Cell cell=row.createCell(1);25 cell.setCellValue("我们被合并单元格啦!");26 27 sheet.addMergedRegion(new CellRangeAddress(28 1, // 起始行29 2, // 结束行30 1, // 其实列31 2 // 结束列32 ));33 34 35 FileOutputStream fileOut=new FileOutputStream("D:\\Together.xls");36 wb.write(fileOut);37 fileOut.close();38}39 }

效果显示:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。