栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java使用POI读取Excel文件

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java使用POI读取Excel文件

上篇文章记录了简单的POI创建Excel文件,依赖导入可参考上篇
POI读取excel中公式

    @Test
    public void testRead() throws Exception {
        //读取文件的位置
        String path = "D:\03版excel测试写入速度.xls";
        //获取文件输入流
        FileInputStream fileInputStream = new FileInputStream(path);
        //通过文件流创建(获取)工作簿,excel中的操作,Java基本都能实现,这里的新建的对象注意与excel版本对应
        Workbook workbook = new HSSFWorkbook(fileInputStream);
        //获取工作表sheet,0表示获取第一个sheet
        Sheet sheet = workbook.getSheetAt(0);
        //获取第一行数据
        Row row = sheet.getRow(0);
        //获取第一行第一个数据
        Cell cell = row.getCell(0);
        System.out.println(cell.getNumericCellValue());
    }

这里可能很多人会输出报错,如下

java.lang.IllegalStateException: Cannot get a xxx类型 value from a xxx类型 cell

这是因为excel单元格的内容格式有很多比如:字符串类型、数字类型、日期类型等。
我这里测试用的excel文件里的内容是数字型所以使用cell.getNumericCellValue()获取,如果是其他类型可cell.查看其他获取方法。

实际使用可以使用for循环读取excel中所有数据,配合switch-case(也可以使用if-else if)对单元格数据类型进行判断,使用对应的获取方法进行获取。使用循环时常用的两个方法 1.sheet.getPhysicalNumberOfRows();获取工作表的行数
2.row.getPhysicalNumberOfCells();获取每行的列数
获取单元格类型的方法
CellType cellType = cell.getCellType();
进行类型判断方法,其他类型如下图可替换NUMERIC
cellType.equals(CellType.NUMERIC)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/781440.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号