-
java读写excel 需要引入一下jar包
compile group: 'org.apache.poi', name: 'poi-ooxml', version: '4.0.1' compile group: 'org.apache.poi', name: 'poi', version: '4.0.1'
-
读取excel表格
Workbook workbook= WorkbookFactory.create(new FileInputStream("C:\\Users\\Administrator\\Desktop\\新建 XLSX 工作表.xlsx")); for(int i=0;i<workbook.getNumberOfSheets();i++){ //getNumberOfSheets()获取sheet的数量 Sheet hssfSheet=workbook.getSheetAt(i); if(hssfSheet.getPhysicalNumberOfRows()==0){ //getPhysicalNumberOfRows获取有效的行总数空行不算 continue; } Row headRow=hssfSheet.getRow(hssfSheet.getFirstRowNum()); //表头必填所有数据以表头为准getFirstRowNum()获取有数据的行号有可能数据从第2行开始 for(int row=hssfSheet.getFirstRowNum();row<=hssfSheet.getLastRowNum();row++){ // getLastRowNum为最后一行的下标 Row rowData=hssfSheet.getRow(row); if(rowData!=null) { if(rowData.getPhysicalNumberOfCells()==0){ continue; } for (int cell = headRow.getFirstCellNum(); cell < headRow.getLastCellNum(); cell++) { //以表头的列数为准,超出表头的数据忽略,具体表具体分析这里采用标准 getLastCellNum 最后该行该列的下标+1 Cell cellData = rowData.getCell(cell); if (cellData == null) { //这里以表头的的下标来取值有可能 该行该列没有值 continue; } CellType cellType=cellData.getCellType(); if(cellType.compareTo(CellType.NUMERIC)==0){ if(HSSFDateUtil.isCellDateFormatted(cellData)){ //判断是否是时间 System.out.print(cellData.getDateCellValue() + " "); }else{ double doubleValue=cellData.getNumericCellValue(); long longValue=(long)doubleValue; if(longValue==doubleValue){ System.out.print(longValue + " "); //去除后面小数点0 }else{ System.out.print(doubleValue); } } }else if(cellType.compareTo(CellType.STRING)==0){ System.out.print(cellData.getStringCellValue() + " "); }else if(cellType.compareTo(CellType.BOOLEAN)==0){ System.out.print(cellData.getBooleanCellValue()); }else if(cellType.compareTo(CellType.FORMULA)==0){ }else { } } System.out.println(""); } }
java excel读取
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...