Apache POI技术-在Java中的基本使用

Apache POI技术-在Java中的基本使用


前言

Apache POI(Poor Obfuscation Implementation)是Apache软件基金会的一个开源项目,提供了用于读写Microsoft Office格式文件(如Word文档、Excel表格、PowerPoint幻灯片)的Java API。POI技术使Java开发人员能够轻松地操作和处理Office文档,为他们提供了丰富的功能和灵活性。


一、Apache POI是什么?

1.Apache POI简介:

Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目。可以使用 POI 在 Java 程序中对Miscrosoft Office各种文件进行读写操作。
在这里插入图片描述

2.Apache POI主要包括的模块:

HSSF:用于操作Excel文件中的.xls格式的数据,提供了读写Excel文件的功能。
XSSF:用于处理Excel文件中的.xlsx格式的数据,支持Excel 2007及以上版本的文件。
HWPF:用于操作Word文件中的.doc格式的数据,提供了读写Word文件的功能。
XWPF:用于处理Word文件中的.docx格式的数据,支持Word 2007及以上版本的文件。
HSLF:用于操作PowerPoint文件中的.ppt格式的数据,提供了读写PowerPoint文件的功能。
XSLF:用于处理PowerPoint文件中的.pptx格式的数据,支持PowerPoint 2007及以上版本的文件。

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

3.Apache POI 的应用场景:

报表生成:

在企业应用中,经常需要生成各种类型的报表,如财务报表、销售报表等。Apache POI技术可以帮助开发人员轻松生成Excel或Word格式的报表,并实现自动化的数据填充和格式化。

数据导入导出:

在数据处理应用中,经常需要将数据从Excel或其他Office文件中读取,或者将数据写入到这些文件中。Apache POI技术提供了读写Excel、Word、PowerPoint等文件的API,能够方便地实现数据导入导出功能。

模板生成:

有时候需要根据特定的模板生成文档,如合同、报价单等。Apache POI技术可以帮助开发人员读取模板并进行修改,以生成符合需求的文档。

自动化办公流程:

在企业应用中,有些流程需要多个人协同完成,如审批流、报销流程等。Apache POI技术可以结合工作流引擎,实现自动化的办公流程,从而提高工作效率和精度。

二、Apache POI基本使用方法

1.引入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>

2.将数据写入Excel文件

代码如下(示例):

/**
     * 通过poi创建一个excel文件,并写入数据
     */
    public  static void write() throws Exception {

        //在内存中,创建一个excel文件
        XSSFWorkbook excel = new XSSFWorkbook();

        //在excel文件中创建sheet页
        XSSFSheet sheet = excel.createSheet("测试111");

        //在sheet页中创建行,rownum编号从0开始
        XSSFRow row = sheet.createRow(1);

        //创建单元格,并将数据写入单元格
        row.createCell(1).setCellValue("姓名");
        row.createCell(2).setCellValue("城市");

        //创建新行
        row = sheet.createRow(2);
        row.createCell(1).setCellValue("张三");
        row.createCell(2).setCellValue("北京");

        //再创建新行
        row = sheet.createRow(3);
        row.createCell(1).setCellValue("李四");
        row.createCell(2).setCellValue("南京");

        //创建输出流对象,将内存中的excel写入到磁盘
        FileOutputStream outputStream =  new FileOutputStream(new File("C:\\Users\\ABC\\Desktop\\info.xlsx"));
        excel.write(outputStream);

        //关闭资源
        outputStream.close();
        excel.close();

    }

实现效果:
在这里插入图片描述

3.读取Excel文件中的数据

代码如下(示例):

 /**
     * 通过poi读取excel文件内容
     */
    public static void read() throws Exception{
        
        //获取输入流对象
        FileInputStream fileInputStream = new FileInputStream(new File("C:\\Users\\ABC\\Desktop\\info.xlsx"));
        
        //创建excel对象,读取excel文件
        XSSFWorkbook excel =  new XSSFWorkbook(fileInputStream);
        
        //读取excel文件中第一个sheet页
        XSSFSheet sheetAt = excel.getSheetAt(0);
        
        //获取excel中数据最后一行的行号
        int lastRowNum = sheetAt.getLastRowNum();
        
        //从第二行开始读
        for (int i = 1; i <= lastRowNum; i++) {
            //获得某一行数据
            XSSFRow row = sheetAt.getRow(i);
            //获得第二个单元格对象
            String cellValue1 = row.getCell(1).getStringCellValue();
            //获得第三个单元格对象
            String cellValue2 = row.getCell(2).getStringCellValue();
            //打印数据
            System.out.println(cellValue1+"  "+cellValue2);
        }
        
        //关闭资源
        fileInputStream.close();
        excel.close();
    }

实现效果:
在这里插入图片描述

总结

以上就是本文章的内容,本文仅仅简单介绍了Apache POI的基本使用,具体使用需要根据实际项目进行实现。

  • 25
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Eclipse使用Apache POI库,可以按照以下步骤进行操作: 1. 下载Apache POI库的最新版本,例如poi-bin-5.0.0-20210115.zip。 2. 解压缩下载的文件,得到如下目录结构: ``` poi-5.0.0 |__lib |__poi-5.0.0.jar |__poi-ooxml-5.0.0.jar |__poi-ooxml-lite-5.0.0.jar |__poi-scratchpad-5.0.0.jar |__ooxml-lib |__xmlbeans-4.0.0.jar |__commons-compress-1.20.jar ``` 3. 在Eclipse创建一个新的Java项目。 4. 右键单击项目名称,选择“Build Path” > “Configure Build Path”。 5. 在弹出的对话框选择“Libraries”选项卡,然后点击“Add External JARs”按钮。 6. 在选择文件对话框选择解压缩后的poi-5.0.0/lib目录下的所有jar文件,然后点击“Open”按钮。 7. 点击“OK”按钮,关闭“Properties”对话框。 现在你可以在Java代码使用Apache POI库了。例如,如果你想要创建一个新的Excel文件,可以编写以下代码: ``` import java.io.FileOutputStream; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; public class CreateExcelFile { public static void main(String[] args) throws Exception { Workbook workbook = new XSSFWorkbook(); FileOutputStream out = new FileOutputStream("test.xlsx"); workbook.write(out); out.close(); System.out.println("Excel文件已创建!"); } } ``` 这里使用Apache POI库的XSSFWorkbook类来创建一个新的Excel文件。注意要在代码导入org.apache.poi.ss.usermodel.Workbook和org.apache.poi.xssf.usermodel.XSSFWorkbook两个类。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值