java开源excel工具类介绍

news/2024/7/10 21:11:42 标签: java, 开源, excel

        Java 中有多种开源库可以用于操作 Excel 文件,以下是一些常用的库以及简单的示例代码:
        Apache POI
        Apache POI 是最流行的 Java API 之一,用于处理 Microsoft Office 文件,包括 Excel。
         Maven 依赖
 

<dependencies>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>5.2.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi-ooxml</artifactId>
        <version>5.2.0</version>
    </dependency>
</dependencies>



        创建 Excel 文件的简单示例


import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileOutputStream;
import java.io.IOException;
public class ApachePOIDemo {
    public static void main(String[] args) throws IOException {
        Workbook workbook = new XSSFWorkbook();
        Sheet sheet = workbook.createSheet("Example Sheet");
        Row row = sheet.createRow(0);
        Cell cell = row.createCell(0);
        cell.setCellValue("Hello, World!");
        try (FileOutputStream fileOut = new FileOutputStream("workbook.xlsx")) {
            workbook.write(fileOut);
        }
        workbook.close();
    }
}


        EasyExcel
        EasyExcel 是一个基于 Apache POI 的开源库,专门用于简化 Excel 文件的读写操作。
        Maven 依赖
        

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>easyexcel</artifactId>
    <version>3.0.5</version>
</dependency>


        
        读取 Excel 文件的简单示例
        

import com.alibaba.excel.EasyExcel;
public class EasyExcelReadDemo {
    public static void main(String[] args) {
        String fileName = "example.xlsx";
        EasyExcel.read(fileName, DemoData.class, new DemoDataListener()).sheet().doRead();
    }
}
// 定义数据模型
class DemoData {
    private String name;
    private int age;
    // getter 和 setter 省略
}
// 定义监听器
class DemoDataListener implements ReadListener<DemoData> {
    @Override
    public void invoke(DemoData data, AnalysisContext context) {
        System.out.println("Read data: " + data);
    }
    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {
        System.out.println("All data is read.");
    }
}


        
        这些示例仅展示了如何使用这些库进行基础操作。这些库的功能非常强大,支持更复杂的操作,如样式设置、公式计算、大数据处理等。你可以根据项目需求进行更深入的学习和使用。


http://www.niftyadmin.cn/n/5387248.html

相关文章

Linux搭建FISCO BCOS的第一个区块链网络

一、前言 FISCO BCOS是由金融区块链合作联盟&#xff08;深圳&#xff09;与微众银行共同发起的开源区块链项目&#xff0c;支持多链多账本&#xff0c;满足金融行业复杂业务需求。本文将介绍如何在Ubuntu操作系统上使用Linux命令搭建FISCO BCOS的第一个区块链网络。 目录 一…

C#知识点-17(正则表达式)

正则表达式 概念&#xff1a;正则表达式是用来进行文本处理的技术&#xff0c;是语言无关的&#xff0c;在几乎所有语言中都有实现 元字符&#xff1a; 1、.&#xff1a;匹配除\n之外的任何单个字符。例如正则表达式“b.g”能匹配如下字符串&#xff1a;“big”、“bug”、“…

【Unity】【VR开发】Unity云同步功能使用心得

【背景】 有时出差,旅行等等也带着电脑,晚上想要继续编辑项目,就需要用到云同步功能。目前实践下来,发现有些内容可以同步,有些内容则是不可以同步的,总结如下。 【如何云同步一个本地项目】 UnityHub的项目面板中有两个选项卡:项目和云端项目。 鼠标挪动到想要云同步…

力扣102 二叉树的层序遍历 Java版本

文章目录 题目描述思路代码 题目描述 给你二叉树的根节点 root &#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[…

mysql优化指南之原理篇

之前碰到一个线上问题&#xff0c;在接手一个同事的项目后&#xff0c;因为工期比较赶&#xff0c;我还没来得及了解业务背景和大致实现&#xff0c;只是了解了上线发布的顺序和验证方式就进行了上线&#xff0c;在上线进行金丝雀的时候系统还没发生什么异常&#xff0c;于是我…

【Rust敲门砖】 Windows环境下配置及安装环境

一、安装C环境 rust底层是依赖C环境的连接器&#xff0c;所以需要先安装C/C编译环境, 有两种选择:安装微软的msvc或者安装mingw/cygwin。 如果使用msvc的Visual Studio&#xff0c;只需要安装好C/C编译环境,然后一路默认就行了&#xff0c;缺点是体积比较大&#xff0c;下载安…

AI新工具(20240222)SDXL-Lightning-节跳动开发一个快速的文本到图像生成模型;GoEnhance - 视频风格转换等

SDXL-Lightning - 节跳动开发一个快速的文本到图像生成模型 SDXL-Lightning是字节跳动开发一个快速的文本到图像生成模型&#xff0c;能够在几个步骤内生成高质量的1024像素图像。该模型发布用于研究目的&#xff0c;可以从stabilityai/stable-diffusion-xl-base-1.0中提取模型…

vs code解决无法识别已安装python库的问题(Mac版)

问题点&#xff1a;在vs code中输入代码&#xff0c;执行时发现未安装python库&#xff0c;然后在终端中进行安装后执行&#xff0c;仍提示未安装python库。 可能的原因有&#xff1a; 1、右下角python解释器配置错误&#xff1b; 2、在终端未正确输入安装命令&#xff1b; …