Apache POI处理Miscrosoft Office 各种文件格式的开源项目

介绍:

应用场景

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>

方法及其作用

创建/写入

复制代码
//创建Excel文件 并且写入文件内容(在内存中创建)
XSSFWorkbook excel = new XSSFWorkbook();

用XSSFWorkbook()创建的excel表默认没有sheet页 需要手动创建

复制代码
XSSFSheet sheet = excel.createSheet();//创建一个sheet页
复制代码
复制代码
        XSSFWorkbook excel = new XSSFWorkbook();//新建excel表
        XSSFSheet sheet = excel.createSheet("info");//创建一个sheet页
                                            //输入sheet名字
        XSSFRow row = sheet.createRow(1);//创建第二行(从0开始)
        row.createCell(1).setCellValue("姓名");//创建单元格也是从0开始 这里表示创建第二个单元格
                                      //在单元格中写入内容
        row.createCell(2).setCellValue("年龄");

        XSSFRow row1 = sheet.createRow(2);
        row1.createCell(1).setCellValue("小李");
        row1.createCell(2).setCellValue("18");

通过excel在磁盘创建

复制代码
        //通过输出流将excel写入磁盘
        FileOutputStream info = new FileOutputStream(new File("D://info.xlsx"));
        excel.write(info);

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

执行之后

读取

复制代码
        //通过输入流获取表格
        FileInputStream in = new FileInputStream(new File("D://info.xlsx"));
        XSSFWorkbook excel = new XSSFWorkbook(in);//接收表格
        XSSFSheet sheet = excel.getSheetAt(0);//通过索引获取sheet页
        //XSSFSheet sheet1 = excel.getSheet("sheet");//通过名字获取sheet页
        int lastRowNum = sheet.getLastRowNum();//获取表中有内容的 最后一行的行号
        for (int i = 1; i <= lastRowNum; i++) {
            //已知有内容的最后一行 循环读取sheet页中内容
            XSSFRow row = sheet.getRow(i);
            XSSFCell cell = row.getCell(1);
            XSSFCell cell1 = row.getCell(2);
            System.out.println(cell + " " + cell1);
        }
        in.close();
        excel.close();

执行结果 记得关流

相关推荐
努力的lpp11 小时前
小迪安全第8天:基础入门-算法分析 & 传输加密 & 数据格式 & 密文存储 & 代码混淆 & 逆向保护
服务器·网络·apache
爱人间11 小时前
apache-tomcat-8.5.72启动控制台乱码解决方案
java·tomcat·apache
XDHCOM12 小时前
Apache Mesos科普,提升资源利用率与系统扩展性的开源平台
开源·apache
❀͜͡傀儡师12 小时前
使用 Docker Run 部署 Apache WebDAV 服务
docker·apache·webdav
D愿你归来仍是少年12 小时前
Apache Spark 详细讲解第 7 章:Shuffle 机制深度解析
大数据·spark·apache
莫爷1 天前
JSON 性能优化实战:大数据量 JSON 的处理技巧
性能优化·json·apache
D愿你归来仍是少年1 天前
Flink 并行度变更时 RocksDB 状态迁移的关键机制与原理
大数据·flink·apache
User_芊芊君子1 天前
大数据时代时序数据库选型指南:Apache IoTDB技术解析与实践建议
大数据·apache·时序数据库
SeaTunnel1 天前
Apache SeaTunnel 提速不难,JVM 参数这样调
jvm·apache
小马爱打代码1 天前
Apache HttpClient 核心设计模式详解
设计模式·apache