java使用poi操作读取Excel文件

发布于:2023-04-27 ⋅ 阅读:(2622) ⋅ 点赞:(2)

在上代码之前首先说说Excel文件的一些名词

工作区workbook:可以理解为一个Excel文件,比如LinkL.xlsx文件

 

表sheet:一个.xlsx文件中的不同表

 

行row:表中的一行数据

单元格cell:每一行中的每一个数据就是单元格

附:我用的是Excel文件以xlsl结尾的是07版本,poi操作要使用XSSF对象

        xls结尾的是03版本,poi操作要使用HSSF对象

上代码:

package Test;

import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import java.io.FileInputStream;

public class ExcelReadTest {
    /*
    * 解析excel数据流程
    * 1,创建文件数据流
    * 2,创建工作区work
    * 3.选择对应表sheet
    * 4.解析表结构,获取数据
    * 5.打印数据
    * 6.关闭流资源
     */
    public static void main(String[] args) throws Exception {
        // 1.获取文件流
        FileInputStream fileInputStream = new FileInputStream("D:\\LinkL.xlsx");

        // 2.创建工作区workbook
        XSSFWorkbook workbook = new XSSFWorkbook(fileInputStream);

        // 3.获取表sheet,这里sheet0代表获取下表为0的excel表,也就是第一个表
        XSSFSheet sheet = workbook.getSheetAt(0);

        // 4.获取数据
        // getLastRowNum() 获取一张sheet表中行的数量
        for(int i = 0 ; i <= sheet.getLastRowNum();i++){ 
            // 获取第i行的数据
            XSSFRow row = sheet.getRow(i);
            // getLastCellNum() 获取这一行中单元格的数量
            for(int j = 0; j < row.getLastCellNum(); j++){
                // 获取第i行第j列的单元格数据
                String cell = row.getCell(j).toString();

                // 5.打印单元格数据
                System.out.print(cell + " | ");
            }
            // println换行
            System.out.println("");
        }

        // 6.关闭资源
        fileInputStream.close();
    }
}

执行结果:

 OK,汇报完毕!

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到