POI的入门学习(二)遍历工作簿的行和列输出单元格内容

POI的入门学习(二)遍历工作簿的行和列输出单元格内容

引入依赖

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.15</version>
        </dependency>

提前准备的excel表格内容。
在这里插入图片描述
Demo代码

package cn.jp.poi.demo.test;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;

import java.io.FileInputStream;
import java.io.InputStream;

/**
 * @author JP
 * @title: Demo4
 * @projectName demoPoi
 * @description: 遍历excel输出内容
 * @date 2019/5/13 0013
 */

public class Demo4 {

    public static void main(String[] args) throws Exception {

        //文件输入流导入excel文件
        InputStream inputStream=new FileInputStream("c:\\demo3.xls");

        POIFSFileSystem fileSystem=new POIFSFileSystem(inputStream);
        HSSFWorkbook workbook=new HSSFWorkbook(fileSystem);
        HSSFSheet sheet=workbook.getSheetAt(0); //获取第一个sheet页

        if (sheet==null){
            return;
        }
        //遍历行Row
        System.out.println(sheet.getLastRowNum());
        for(int i=0;i<=sheet.getLastRowNum();i++){
            HSSFRow row=sheet.getRow(i); //获取单行
            if (row==null){
                return;
            }
            //遍历列
            for(int j=0;j<=row.getLastCellNum();j++){
                HSSFCell cell=row.getCell(j); //获取单列
                if(cell ==null){
                    continue;
                }
                System.out.print(" "+getValue(cell));
            }
            System.out.println();
        }
    }
    private static String getValue(HSSFCell cell){
        if(cell.getCellType() ==HSSFCell.CELL_TYPE_BOOLEAN){ //若为boolean类型
            return String.valueOf(cell.getBooleanCellValue());
        }else if (cell.getCellType() ==HSSFCell.CELL_TYPE_NUMERIC){ //若为数字类型
            return String.valueOf(cell.getNumericCellValue());
        }else {
            return String.valueOf(cell.getStringCellValue()); //其他类型统一返回字符串
        }

    }
}

输出结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

收破烂的小熊猫~

你的鼓励将是我创造最大的东西~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值