1、导入依赖
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.15</version>
</dependency>
2、上代码
package com.lens;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
public class ExcelData {
private XSSFSheet xssfSheet;
//构造函数,初始化excel数据
ExcelData(String filePath,String sheetName){
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(filePath);
XSSFWorkbook sheets = new XSSFWorkbook(fileInputStream);
//获取sheet
xssfSheet = sheets.getSheet(sheetName);
} catch (Exception e) {
e.printStackTrace();
}
}
//根据行和列的索引获取单元格的数据
public String getExcelDateByIndex(int row,int column){
XSSFRow row1 = xssfSheet.getRow(row);
String cell = row1.getCell(column).toString();
return cell;
}
//根据某一列值为的这一行,来获取该行第x列的值
public String getCellByCaseName(String caseName,int currentColumn,int targetColumn){
String operateSteps="";
//获取行数
int rows = xssfSheet.getPhysicalNumberOfRows();
for(int i=0;i<rows;i++){
XSSFRow row = xssfSheet.getRow(i);
String cell = row.getCell(currentColumn).toString();
if(cell.equals(caseName)){
operateSteps = row.getCell(targetColumn).toString();
break;
}
}
return operateSteps;
}
//打印excel数据
public void readExcelData(){
//获取行数
int rows = xssfSheet.getPhysicalNumberOfRows();
for(int i=0;i<rows;i++){
//获取列数
XSSFRow row = xssfSheet.getRow(i);
int columns = row.getPhysicalNumberOfCells();
for(int j=0;j<columns;j++){
String cell = row.getCell(j).toString();
System.out.println(cell);
}
}
}
//测试方法
public static void main(String[] args){
//filePath:路径
//sheetName:sheet
ExcelData sheet1 = new ExcelData("D:\\apache-tomcat-9.0.20-8847\\webapps\\dmap-web\\export\\9ba981125d314d8c91c519d670a32d26", "建设用地报报批");
sheet1.readExcelData();
}
}
转载:https://blog.csdn.net/galen2016/article/details/84840793