上代码
// 解析路径的file文件
Workbook workbook = Workbook.getWorkbook(new File("src/main/resources/static/file/qhjj.xls"));
// 获取第一张工作表
Sheet sheet = workbook.getSheet(0);
// 循环获取每一行数据 因为默认第一行为标题行,我们可以从 1 开始循环,如果需要读取标题行,从 0 开始
// sheet.getRows() 获取总行数
Map<String, String> objectObjectMap = new HashMap<>();
for (int i = 1; i < sheet.getRows(); i++) {
// 获取第一列的第 i 行信息 sheet.getCell(列,行),下标从0开始
String id = sheet.getCell(0, i).getContents();
// 获取第二列的第 i 行信息
String name = sheet.getCell(1,i).getContents();
// 获取第三列的第 i 行信息
String sex = sheet.getCell(2, i).getContents();
// 获取第四列的第 i 行信息
String statusCode = sheet.getCell(3, i).getContents();
// 存入本地或者是存入对象等根据给人需求自己定就行,创建对象存储,然后加入集合中
//获取到数据就可以使用了
}
可能遇到错误
Unable to recognize OLE stream
Exception in thread "main" jxl.read.biff.BiffException: Unable to recognize OLE stream
at jxl.read.biff.CompoundFile.<init>(CompoundFile.java:116)
at jxl.read.biff.File.<init>(File.java:127)
at jxl.Workbook.getWorkbook(Workbook.java:221)
at jxl.Workbook.getWorkbook(Workbook.java:198)
at com.example.demo.utils.ExcelDemo.main(ExcelDemo.java:29)
进程已结束,退出代码1
解决方法,版本问题xlsx文件另存为xls文件就行了