java读取Excel内容
发布时间:2020-12-15 07:21:24 所属栏目:Java 来源:网络整理
导读:https://blog.csdn.net/Ma_Da_O007/article/details/94560566 ? java读取Excel内容 1.添加依赖 添加依赖: dependency groupId org.apache.poi /groupId artifactId poi /artifactId version 3.16 /version /dependency dependency groupId org.apache.poi /
https://blog.csdn.net/Ma_Da_O007/article/details/94560566 ? java读取Excel内容1.添加依赖添加依赖: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.16</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.14</version> </dependency><!-- 处理excel和上面功能是一样的--> <dependency> <groupId>net.sourceforge.jexcelapi</groupId> <artifactId>jxl</artifactId> <version>2.6.10</version> </dependency>
2.实现方法创建Util类,写一个读取的方法,返回结果为List,List中包裹一个List,类似二维数组,包括行列 public class ExcelUtil { // 去读Excel的方法readExcel,该方法的入口参数为一个File对象 public static List readExcel(File file) { try { // 创建输入流,读取Excel InputStream is = new FileInputStream(file.getAbsolutePath()); // jxl提供的Workbook类 Workbook wb = Workbook.getWorkbook(is); // Excel的页签数量 int sheet_size = wb.getNumberOfSheets(); for (int index = 0; index < sheet_size; index++) { List<List> outerList = new ArrayList<List>(); // 每个页签创建一个Sheet对象 Sheet sheet = wb.getSheet(index); // sheet.getRows()返回该页的总行数 for (int i = 0; i < sheet.getRows(); i++) { List innerList = new ArrayList(); // sheet.getColumns()返回该页的总列数 for (int j = 0; j < sheet.getColumns(); j++) { String cellinfo = sheet.getCell(j,i).getContents(); if (cellinfo.equals("")) { continue; } innerList.add(cellinfo); } outerList.add(i,innerList); } return outerList; } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (BiffException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return null; } }
3.实际调用在main方法或者需要的地方调用 public class Test { public static void main(String[] args) { File file = new File("D:/readExcel.xls"); //根据文件path获取文件 List excelList = ExcelUtil.readExcel(file); System.out.println("list中的数据打印出来"); for (int i = 0; i < excelList.size(); i++) { List list = (List) excelList.get(i); for (int j = 0; j < list.size(); j++) { String string = list.get(j).toString(); System.out.println(string); } System.out.println(); } } }
4.注意目前这个方法无法读取’.xlsx’的内容,无法识别读取到的流 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- java – Spring-Security 3 / Spring MVC和可怕的@Secured
- java – 请求的资源不适用于servlet 3.0和tomcat 7.0
- 如何在java循环中设置一个switch语句
- java – 如何使用通配符迭代此通用列表?
- 深入理解Spring Cloud Zuul过滤器
- java – 使用AppBarLayout.Behavior.DragCallback来控制折叠
- 第四周课程总结&试验报告(二)
- java – 试图理解“两种方法都有相同的删除,但都没有覆盖其
- java – 带有where子句的SQL select语句
- java – 使用Stream API创建对象初始化循环