iexcel

IExcel is a java tool for excel write and read.

License

License

GroupId

GroupId

com.github.houbb
ArtifactId

ArtifactId

iexcel
Last Version

Last Version

0.0.9
Release Date

Release Date

Type

Type

jar
Description

Description

iexcel
IExcel is a java tool for excel write and read.
Source Code Management

Source Code Management

https://github.com/houbb/iexcel

Download iexcel

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.houbb/iexcel/ -->
<dependency>
    <groupId>com.github.houbb</groupId>
    <artifactId>iexcel</artifactId>
    <version>0.0.9</version>
</dependency>
// https://jarcasting.com/artifacts/com.github.houbb/iexcel/
implementation 'com.github.houbb:iexcel:0.0.9'
// https://jarcasting.com/artifacts/com.github.houbb/iexcel/
implementation ("com.github.houbb:iexcel:0.0.9")
'com.github.houbb:iexcel:jar:0.0.9'
<dependency org="com.github.houbb" name="iexcel" rev="0.0.9">
  <artifact name="iexcel" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.github.houbb', module='iexcel', version='0.0.9')
)
libraryDependencies += "com.github.houbb" % "iexcel" % "0.0.9"
[com.github.houbb/iexcel "0.0.9"]

Dependencies

compile (5)

Group / Artifact Type Version
com.github.houbb : heaven jar 0.1.104
org.apiguardian : apiguardian-api jar 1.0.0
org.apache.poi : poi jar 3.17
org.apache.poi : poi-ooxml jar 3.17
xerces : xercesImpl jar 2.11.0

test (1)

Group / Artifact Type Version
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

项目简介

IExcel 用于优雅地读取和写入 excel。

避免大 excel 出现 oom,简约而不简单。

Build Status Maven Central Open Source Love

特性

  • 一行代码搞定一切

  • OO 的方式操作 excel,编程更加方便优雅。

  • sax 模式读取,SXSS 模式写入。避免 excel 大文件 OOM。

  • 基于注解,编程更加灵活。

  • 设计简单,注释完整。方便大家学习改造。

  • 可根据注解指定表头顺序

  • 支持 excel 文件内容 bytes[] 内容获取,便于用户自定义操作。

变更日志

变更日志

v0.0.9 主要变更

Fixed @ExcelField注解失效问题

创作缘由

实际工作和学习中,apache poi 操作 excel 过于复杂。

近期也看了一些其他的工具框架:

  • easypoi

  • easyexcel

  • hutool-poi

都或多或少难以满足自己的实际需要,于是就自己写了一个操作 excel 导出的工具。

实现:在阿里 easyexcel 的基础上进行封装,提升使用的简易度。

快速开始

环境要求

jdk1.7+

maven 3.x

引入 jar

使用 maven 管理。

<dependency>
     <groupId>com.github.houbb</groupId>
     <artifactId>iexcel</artifactId>
     <version>0.0.9</version>
</dependency>

Excel 写入

示例

// 基本属性
final String filePath = PathUtil.getAppTestResourcesPath()+"/excelHelper.xls";
List<User> models = User.buildUserList();

// 直接写入到文件
ExcelHelper.write(filePath, models);

其中:

  • User.java
public class User {

    private String name;

    private int age;

    //fluent getter/setter/toString()
}
  • buildUserList()

构建对象列表方法如下:

/**
 * 构建用户类表
 * @return 用户列表
 * @since 0.0.4
 */
public static List<User> buildUserList() {
    List<User> users = new ArrayList<>();
    users.add(new User().name("hello").age(20));
    users.add(new User().name("excel").age(19));
    return users;
}

写入效果

excel 内容生成为:

name	age
hello	20
excel	19

Excel 读取

示例

final String filePath = PathUtil.getAppTestResourcesPath()+"/excelHelper.xls";
List<User> userList = ExcelHelper.read(filePath, User.class);

信息

[User{name='hello', age=20}, User{name='excel', age=19}]

文档

01-ExcelBs 引导类使用说明

02-ExcelField 注解指定字段属性

03-ExcelField#order 指定列顺序

04-ExcelBs#bytes 获取文件字节信息

Bug & Issues

欢迎提出宝贵意见:Bug & Issues

后期 Road-Map

  • 是否有表头的指定

  • 添加类型转换支持

  • 对于枚举值的注解支持

  • 对于样式的注解支持

  • 多 sheet 支持

Versions

Version
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1