Java中如何灵活获取excel中的数据
更新时间:2023年07月19日 14:58:06 作者:一枝风
这篇文章主要给大家介绍了关于Java中如何灵活获取excel中的数据,在日常工作中我们常常会进行文件读写操作,除去我们最常用的纯文本文件读写,更多时候我们需要对Excel中的数据进行读取操作,需要的朋友可以参考下
在java当中获取excel数据,获取每一列数据、每一行数据
在这里例子是将每一行数据获取出来,并带着表头数据返回。
代码:
具体实现逻辑在代码注释当中可以参见。
public static List<Map<String,Object>> test1() throws Exception{ File file = new File("C:/Users/luo_a/Desktop/数据测试.xlsx"); if (!file.exists()){ throw new Exception("文件不存在!"); } InputStream in = new FileInputStream(file); // 读取整个Excel XSSFWorkbook sheets = new XSSFWorkbook(in); // 获取第一个表单Sheet XSSFSheet sheetAt = sheets.getSheetAt(0); //默认第一行为标题行,i = 0 XSSFRow titleRow = sheetAt.getRow(0); List<Map<String,Object>> mapList = new ArrayList<>(); // 循环获取每一行数据 for (int i = 1; i < sheetAt.getPhysicalNumberOfRows(); i++) { XSSFRow row = sheetAt.getRow(i); // 读取每一列内容 Map<String,Object> map = new HashMap<>(); for (int index = 0; index < row.getPhysicalNumberOfCells(); index++) { XSSFCell titleCell = titleRow.getCell(index); XSSFCell cell = row.getCell(index); cell.setCellType(CellType.STRING); if (cell.getStringCellValue().equals("")) { continue; } //表头数据 String titleName = titleCell.getStringCellValue(); //单元格内容 String valueName = cell.getStringCellValue(); //每一行的数据 map.put(titleName,valueName); } mapList.add(map); } System.out.println(JSON.toJSONString(mapList)); return mapList; }
excel例子:
代码执行:
将执行结果格式化一下,更直观。
我们只要能获取行列数据,在就可以根据自己的实际需要去实现自己的代码。
总结
到此这篇关于Java中如何灵活获取excel中数据的文章就介绍到这了,更多相关Java获取excel数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
相关文章
Spring Cloud Admin健康检查 邮件、钉钉群通知的实现
这篇文章主要介绍了Spring Cloud Admin健康检查 邮件、钉钉群通知的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-08-08详解关于eclipse中使用jdk15对应javafx15的配置问题总结
这篇文章主要介绍了详解关于eclipse中使用jdk15对应javafx15的配置问题总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-11-11
最新评论