您好,登錄后才能下訂單哦!
這篇文章主要講解了“POI的常用方法分享”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“POI的常用方法分享”吧!
public static void main(String[] args) throws IOException {
Workbook workbook = new HSSFWorkbook();
/*==========獲取常用對象======begin===========
//讀取文件
POIFSFileSystem fs = new POIFSFileSystem(new FileInputStream("C:/a.xls"));
//得到Excel工作簿對象
Workbook workbook = new HSSFWorkbook(fs);
//得到工作表對象
Sheet sheet = workbook.getSheetAt(0);
//得到工作表的行
Row row = sheet.getRow(0);
//得到指定行的單元格
Cell cell = row.getCell(0);
//得到單元格樣式
CellType cellType = CellType.forInt(cell.getCellType());
=========獲取常用對象=========end===========*/
/*=============建立常用對象=======begin=======
//創建工作簿
Workbook workbook = new HSSFWorkbook();
//創建工作表
Sheet sheet= workbook.createSheet("new Sheet");
//創建行
Row row = sheet.getRow(0);
//創建單元格樣式
CellStyle cellStyle = workbook.createCellStyle();
//在指定行創建指定樣式的單元格
row.createCell(0).setCellStyle(cellStyle);
//在指定行創建含有指定值的單元格
row.createCell(0).setCellValue(1);
===============建立常用對象=======end========*/
/*============設置sheet名稱和單元格內容======begin======
Workbook workbook = new HSSFWorkbook();
workbook.setSheetName(1, "第一張工作表");
Cell cell = workbook.createSheet().createRow(0).createCell(0);
cell.setCellValue("單元格內容");
============設置sheet名稱和單元格內容=======end======*/
/*============取得sheet的數量========begin====
Workbook workbook = new HSSFWorkbook();
workbook.getNumberOfSheets();
============取得sheet的數量========end====*/
//根據index取得sheet對象
Sheet sheet = workbook.getSheetAt(0);
//取得有效的行數
int count = sheet.getLastRowNum();
//取得一行有效的單元格個數
Row row = sheet.getRow(0);
row.getLastCellNum();
//單元格類型的讀寫
Cell cell = row.getCell(0);
cell.setCellType(CellType.STRING);//設置單元格為String類型
cell.getNumericCellValue();//讀取數值類型的單元格內容
//設置列寬 行高
sheet.setColumnWidth(100, 100);
row.setHeight((short)100);
//添加區域 合并單元格
sheet.addMergedRegion(new CellRangeAddress(0,3,0,0));
Row row1 = sheet.createRow(0);
row1.createCell(0).setCellValue("0");
row1.createCell(1).setCellValue("1");
row1.createCell(2).setCellValue("2");
row1.createCell(3).setCellValue("3");
//保存Excel文件
String path = "C:/a.xls";
FileOutputStream fileOutputStream = new FileOutputStream(path);
workbook.write(fileOutputStream);
//常用單元格邊框格式
CellStyle style = workbook.createCellStyle();
style.setBorderTop(CellStyle.BORDER_DOTTED);//上邊框
style.setBorderBottom(CellStyle.BORDER_DOTTED);//下邊框
style.setBorderLeft(CellStyle.BORDER_THIN);//左邊框
style.setBorderRight(CellStyle.BORDER_DOTTED);//右邊框
//設置字體
Font font = workbook.createFont();
font.setFontHeightInPoints((short)11);//設置字體
font.setBoldweight(Font.BOLDWEIGHT_NORMAL);//加粗
//設置位置
style.setFont(font);
style.setAlignment(CellStyle.ALIGN_CENTER);//左右居中
style.setVerticalAlignment(CellStyle.VERTICAL_CENTER);//上下居中
style.setRotation((short)10);//單元格內容的旋轉的角度
//設置
DataFormat dataFormat = workbook.createDataFormat();
style.setDataFormat(dataFormat.getFormat("0.00%"));//設置單元格數據格式
cell.setCellFormula("");//給單元格設置公式
//插入圖片
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
BufferedImage bufferedImage = ImageIO.read(new File("a.jpg"));
ImageIO.write(bufferedImage, "jpg", byteArrayOutputStream);
//自定義顏色
Font font1 = workbook.createFont();
font1.setColor(HSSFColor.RED.index);
style.setFont(font1);
cell.setCellStyle(style);
}
點擊(此處)折疊或打開
/*=================根據單元不同屬性返回字符串數值========begin============*/
public String getCellStringValue(Cell cell){
String cellValue = "";
switch (CellType.forInt(cell.getCellType())){
case _NONE:
break;
case NUMERIC:
cellValue = String.valueOf(cell.getNumericCellValue());
break;
case STRING:
cellValue = cell.getStringCellValue();
if (cellValue.trim().equals("") || cellValue.trim().length() <= 0){
cellValue = "";
}
break;
case FORMULA:
cell.setCellType(CellType.NUMERIC);
cellValue = String.valueOf(cell.getNumericCellValue());
break;
case BLANK:
cellValue = "";
break;
case BOOLEAN:
break;
case ERROR:
break;
}
return cellValue;
}
/*=================根據單元不同屬性返回字符串數值========end============*/
感謝各位的閱讀,以上就是“POI的常用方法分享”的內容了,經過本文的學習后,相信大家對POI的常用方法分享這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。