Apache POI简介及应用场景

 更新时间:2023年11月28日 11:24:43   作者:Ja kar ta  
Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目,我们可以使用POI在Java程序中对Miscrosoft Office各种文件进行读写操作,本文给大家介绍Apache POI简介,感兴趣的朋友一起看看吧

三十二、Apache POI

32.1 介绍

Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。简单来说就是,我们可以使用POI在Java程序中对Miscrosoft Office各种文件进行读写操作。

一般情况下,POI都是用于操作Excel文件。

Apache POI 的应用场景:

银行网银系统导出交易明细

各种业务系统导出Excel报表

批量导入业务数据

32.2 入门案例

Apache POI 既可以将数据写入Excel文件,也可以读取Excel文件中的数据,接下来分别进行实现。

Apache POI的maven坐标:

<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.16</version>
</dependency>

32.2.1 将数据写入Excel文件

1). 代码开发

package com.sky.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.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class POITest {
    /**
     * 通过POI创建Excel 文件并且写入文件内容
     */
    public static void write() throws Exception {
        //在内存中创建一个Excel文件
        XSSFWorkbook excel = new XSSFWorkbook();
        //在Excel文件中创建一个Sheet页
        XSSFSheet sheet = excel.createSheet("info");
        //在Sheet中创建一个行对象,rownum编号从0开始
        XSSFRow row = sheet.createRow(0);
        //创建单元格并且写入文件内容
        row.createCell(0).setCellValue("姓名");
        row.createCell(1).setCellValue("城市");
        //创建一个新行
        row = sheet.createRow(1);
        row.createCell(0).setCellValue("张三");
        row.createCell(1).setCellValue("北京");
        row = sheet.createRow(2);
        row.createCell(0).setCellValue("李四");
        row.createCell(1).setCellValue("南京");
        //通过输出流将内存中的Excel文件写入到磁盘
        FileOutputStream out = new FileOutputStream(new File("D:\\info.xlsx"));
        excel.write(out);
        //关闭资源
        out.close();
        excel.close();
    }
    public static void main(String[] args) throws Exception {
        write();
    }
}

2). 实现效果

在D盘中生成info.xlsx文件,创建名称为info的Sheet页,同时将内容成功写入。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

32.2.2 读取Excel文件中的数据

1). 代码开发

/**
 * 通过POI读取Excel文件中的内容
 */
public static void read() throws Exception {
    InputStream inputStream = new FileInputStream(new File("D:\\info.xlsx"));
    //读取磁盘上已经存在的Excel文件
    XSSFWorkbook excel = new XSSFWorkbook(inputStream);
    //读取Excel文件中的第一个Sheet页
    XSSFSheet sheet = excel.getSheetAt(0);
    //获取Sheet中最后一行的行号
    int lastRowNum = sheet.getLastRowNum();
    for (int i=0;i<=lastRowNum;i++){
        //获得某一行
        XSSFRow row = sheet.getRow(i);
        //获得单元格对象
        String cellValue1 = row.getCell(0).getStringCellValue();
        String cellValue2 = row.getCell(1).getStringCellValue();
        System.out.println(cellValue1+" "+cellValue2);
    }
    //关闭资源
    inputStream.close();
    excel.close();
}
public static void main(String[] args) throws Exception {
    //write();
    read();
}

2). 实现效果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

到此这篇关于Apache POI简介的文章就介绍到这了,更多相关Apache POI简介内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Ubuntu 7.10修改软件源的方法

    Ubuntu 7.10修改软件源的方法

    这篇文章主要介绍了Ubuntu 7.10修改软件源的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-03-03
  • linux里daily_routine实例代码详解

    linux里daily_routine实例代码详解

    在本篇文章里小编给大家整理的是关于linux里daily_routine实例代码以及相关知识点内容,有需要的朋友们参考下。
    2019-09-09
  • 详解Ubuntu14.04桥接网络设置与SSH登陆

    详解Ubuntu14.04桥接网络设置与SSH登陆

    本篇文章主要介绍了详解Ubuntu14.04桥接网络设置与SSH登陆,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-01-01
  • linux的CPU、内存查看命令方式

    linux的CPU、内存查看命令方式

    这篇文章主要介绍了linux的CPU、内存查看命令方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-07-07
  • Linux基线检查与安全加固方式

    Linux基线检查与安全加固方式

    本文详细介绍了Linux安全加固的多个方面,包括账户管理、口令策略、SSH安全设置等,首先,对于账户管理,介绍了口令锁定策略、口令生存期、口令复杂度、密码重用限制以及禁止存在空密码账户等方面的检查和加固操作,其次,在服务管理方面
    2024-10-10
  • Linux中gpio接口的使用方法示例

    Linux中gpio接口的使用方法示例

    这篇文章主要给大家介绍了关于Linux中gpio接口的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11
  • win7安装xampp提示windows找不到-n文件(安装成功后,443端口占用,apache服务器无法正常启动)的解决方案

    win7安装xampp提示windows找不到-n文件(安装成功后,443端口占用,apache服务器无法正常启动)的解

    这篇文章主要介绍了win7安装xampp提示windows找不到-n文件(安装成功后,443端口占用,apache服务器无法正常启动)的解决方案的相关资料,需要的朋友可以参考下
    2016-09-09
  • SSH配置免密登录全过程

    SSH配置免密登录全过程

    这篇文章主要介绍了SSH配置免密登录全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Linux进程信号的捕捉处理方式

    Linux进程信号的捕捉处理方式

    这篇文章主要介绍了Linux进程信号的捕捉处理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • Linux安装mysql报错NOKEY的解决过程

    Linux安装mysql报错NOKEY的解决过程

    在CentOS 7系统下安装MySQL 5.7时,由于yum安装了旧版本的GPG keys导致报错, 经分析后,发现原因,解决办法是在安装脚本后面加上--force--nodeps, 这篇文章总结了作者的个人经验,希望能给大家提供参考
    2026-05-05

最新评论