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();

执行结果 记得关流

相关推荐
数据爬坡ing21 小时前
过程设计工具深度解析-软件工程之详细设计(补充篇)
大数据·数据结构·算法·apache·软件工程·软件构建·设计语言
运维行者_1 天前
使用Applications Manager进行 Apache Solr 监控
运维·网络·数据库·网络安全·云计算·apache·solr
皓空揽月1 天前
php+apache+nginx 更换域名
nginx·php·apache
求知若渴,虚心若愚。3 天前
高可用实战之Nginx + Apache篇
运维·nginx·apache
阿里云云原生4 天前
Apache RocketMQ EventBridge:为什么 GenAI 需要 EDA?
apache·rocketmq
沈健_算法小生5 天前
Apache RocketMQ:消息可靠性、顺序性与幂等处理的全面实践
apache·rocketmq
老虎06275 天前
JavaWeb(苍穹外卖)--学习笔记17(Apache Echarts)
笔记·学习·apache
Bruce_Liuxiaowei6 天前
绕过文件上传漏洞并利用文件包含漏洞获取系统信息的技术分析
运维·网络安全·php·apache
lifallen6 天前
Hadoop MapReduce过程
大数据·数据结构·hadoop·分布式·apache
beijingliushao6 天前
30-Hive SQL-DML-Load加载数据
数据仓库·hive·apache