POI 對excel表格基本操作Demo
阿新 • • 發佈:2019-01-30
今天熟悉了一下POI對excel的一些基本操作與大家分享一下
import java.io.FileOutputStream; import java.io.IOException; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFFont; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hssf.util.HSSFColor; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Row; public class PoiTest { public static void main(String[] args) throws IOException { // TODO Auto-generated method stub //建立一個空白的workbook HSSFWorkbook workBook = new HSSFWorkbook(); FileOutputStream fos = new FileOutputStream("f:/test.xls"); //建立sheet頁 HSSFSheet sheet1 = workBook.createSheet("工作表1"); HSSFSheet sheet2 = workBook.createSheet("工作表12"); //////////////////////////////////////////// //建立物件給第二行第一個單元格賦值 Row row2 = sheet2.createRow(1); row2.setHeight((short) 100); Cell cell2 = row2.createCell(0); cell2.setCellValue("sheet2賦值成功"); System.out.println(cell2.getCellType()); /////////////////////////////////////////// //建立物件給第二行第一個單元格賦值 Row row = sheet1.createRow(1); Cell cell = row.createCell(0); cell.setCellValue("sheet1中賦值成功"); //設定行高 row.setHeight((short) 1000); //設定列寬 第一個引數第幾列(從0開始) 第二個引數寬度 sheet1.setColumnWidth((short) 0, (short) 5000); //設定樣式 HSSFCellStyle cellStyle = workBook.createCellStyle(); // 文字居中 cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 設定單元格的文字方式為可多行編寫方式 cellStyle.setWrapText(true); // 1.如果需要前景顏色或背景顏色,一定要指定填充方式,兩者順序無所謂; // 2.如果同時存在前景顏色和背景顏色,前景顏色的設定要寫在前面; // 3.前景顏色不是字型顏色。 //指定填充模式 cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); cellStyle.setFillForegroundColor(HSSFColor.RED.index); cellStyle.setFillBackgroundColor(HSSFColor.LIGHT_YELLOW.index); // 建立一個字型物件,因為字型也是單元格格式的一部分,所以從屬於HSSFCellStyle // 下面幾個字型的相關設定望文生義,就不用一一說明了吧 HSSFFont font = workBook.createFont(); font.setFontName("宋體"); font.setItalic(true); font.setColor(HSSFColor.BLUE.index); font.setFontHeightInPoints((short) 20); font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD); // 將字型物件賦值給單元格樣式物件 cellStyle.setFont(font); //將樣式設定到cell中 cell.setCellStyle(cellStyle); workBook.write(fos); fos.close(); } }
希望對大家有幫助!