{"id":13707927,"url":"https://github.com/hellokaton/excel-plus","last_synced_at":"2025-04-04T06:04:59.884Z","repository":{"id":41222396,"uuid":"120172463","full_name":"hellokaton/excel-plus","owner":"hellokaton","description":"❇️ Improve the productivity of the Excel operation library. https://hellokaton.github.io/excel-plus/#/","archived":false,"fork":false,"pushed_at":"2025-02-19T03:28:42.000Z","size":649,"stargazers_count":190,"open_issues_count":16,"forks_count":46,"subscribers_count":6,"default_branch":"dev","last_synced_at":"2025-03-28T05:06:48.115Z","etag":null,"topics":["excel","excel-export","excel-import","excel-to-json","jxl"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hellokaton.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-02-04T09:48:27.000Z","updated_at":"2025-02-19T02:37:41.000Z","dependencies_parsed_at":"2024-12-26T18:11:44.844Z","dependency_job_id":"fdf43cd0-3486-44b8-96cd-e6754d671601","html_url":"https://github.com/hellokaton/excel-plus","commit_stats":null,"previous_names":["biezhi/excel-plus"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellokaton%2Fexcel-plus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellokaton%2Fexcel-plus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellokaton%2Fexcel-plus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hellokaton%2Fexcel-plus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hellokaton","download_url":"https://codeload.github.com/hellokaton/excel-plus/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247128736,"owners_count":20888233,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["excel","excel-export","excel-import","excel-to-json","jxl"],"created_at":"2024-08-02T22:01:49.306Z","updated_at":"2025-04-04T06:04:59.837Z","avatar_url":"https://github.com/hellokaton.png","language":"Java","readme":"# excel-plus\n\nEasier to read and generate an excel file, supports `XLSX`、`XLS`、`CSV`.\n\n[![EO principles respected here](http://www.elegantobjects.org/badge.svg)](http://www.elegantobjects.org)\n[![DevOps By Rultor.com](http://www.rultor.com/b/hellokaton/excel-plus)](http://www.rultor.com/p/hellokaton/excel-plus)\n\n\n[![](https://img.shields.io/travis/hellokaton/excel-plus.svg)](https://travis-ci.org/hellokaton/excel-plus)\n[![Javadocs](http://javadoc.io/badge/io.github.biezhi/excel-plus.svg)](http://javadoc.io/doc/io.github.biezhi/excel-plus)\n[![](https://img.shields.io/maven-central/v/io.github.biezhi/excel-plus.svg)](https://search.maven.org/search?q=excel-plus)\n[![](https://img.shields.io/badge/license-Apache2-FF0080.svg)](https://github.com/hellokaton/excel-plus/blob/master/LICENSE)\n\n[![codecov](https://codecov.io/gh/hellokaton/excel-plus/branch/master/graph/badge.svg)](https://codecov.io/gh/hellokaton/excel-plus)\n[![SonarQube](https://img.shields.io/badge/sonar-ok-green.svg)](https://sonarcloud.io/dashboard/index/io.github.biezhi:excel-plus)\n\n\u003ca href=\"https://hellokaton.github.io/excel-plus/#/\" target=\"_blank\"\u003e中文文档\u003c/a\u003e\n\n# Feature\n\n- Easy to use\n- Annotation driven\n- Based java 8\n- Support `xls`、`xlsx`、`csv`\n- Support export by template\n- Support custom column style\n- High performance, only 30 seconds to read or write `1,000,000` lines\n\n# Usage\n\n**How to use**. Latest version here\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003eio.github.biezhi\u003c/groupId\u003e\n    \u003cartifactId\u003eexcel-plus\u003c/artifactId\u003e\n    \u003cversion\u003e1.0.8\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\nsnapshot version\n\n```xml\n\u003crepositories\u003e\n    \u003crepository\u003e\n        \u003cid\u003esnapshots-repo\u003c/id\u003e\n        \u003curl\u003ehttps://oss.sonatype.org/content/repositories/snapshots\u003c/url\u003e\n        \u003creleases\u003e\n            \u003cenabled\u003efalse\u003c/enabled\u003e\n        \u003c/releases\u003e\n        \u003csnapshots\u003e\n            \u003cenabled\u003etrue\u003c/enabled\u003e\n        \u003c/snapshots\u003e\n    \u003c/repository\u003e\n\u003c/repositories\u003e\n\n\u003cdependencies\u003e\n    \u003cdependency\u003e\n        \u003cgroupId\u003eio.github.biezhi\u003c/groupId\u003e\n        \u003cartifactId\u003eexcel-plus\u003c/artifactId\u003e\n        \u003cversion\u003e1.0.8-SNAPSHOT\u003c/version\u003e\n    \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\n**Read excel as List**\n\n![](https://i.loli.net/2018/12/14/5c1290880509b.png)\n\n```java\npublic class Member {\n\n    @ExcelColumn(title = \"卡号\", index = 0)\n    private Long cardNo;\n\n    @ExcelColumn(title = \"卡类型\", index = 1)\n    private String cardType;\n\n    @ExcelColumn(title = \"领用状态\", index = 2)\n    private String requisitionStatus;\n\n    @ExcelColumn(title = \"状态\", index = 3)\n    private String status;\n\n    @ExcelColumn(title = \"余额(元)\", index = 6)\n    private BigDecimal amount;\n\n    @ExcelColumn(title = \"会员\", index = 7)\n    private String nickname;\n\n    @ExcelColumn(title = \"性别\", index = 9)\n    private String gender;\n\n    @ExcelColumn(title = \"手机\", index = 10)\n    private String mobile;\n\n    @ExcelColumn(title = \"发卡日期\", index = 14, datePattern = \"M/d/yyyy HH:mm\")\n    private Date sendCardTime;\n    \n    // getter setter 省略\n}\n```\n\n```java\nList\u003cMember\u003e members = Reader.create(Member.class)\n                 .from(new File(\"members.xlsx\"))\n                 .start(1)\n                 .asList();\n```\n\n**Write excel as file**\n\n```java\npublic class Book {\n\n    @ExcelColumn(title = \"书名\", index = 0)\n    private String title;\n    \n    @ExcelColumn(title = \"作者\", index = 1)\n    private String author;\n\n    @ExcelColumn(title = \"售价\", index = 2)\n    private Double price;\n\n    @ExcelColumn(title = \"出版日期\", index = 3, datePattern = \"yyyy年M月\")\n    private LocalDate publishDate;\n    \n    // getter setter 省略\n}\n```\n\n```java\nWriter.create()\n         .withRows(books)\n         .headerTitle(\"书籍列表 V1\")\n         .to(new File(\"book.xlsx\"));\n```\n\n![](https://i.loli.net/2018/12/14/5c1292b23b66f.png)\n\nCode See [here](https://github.com/hellokaton/excel-plus/blob/master/src/test/java/io/github/biezhi/excel/plus/examples/WriterExample.java#L145)\n\n**Browser download**\n\n```java\nWriter.create()\n         .withRows(orders)\n         .to(ResponseWrapper.create(HttpServletResponse, \"order-list.xls\"));\n```\n\n# Examples\n\nSee [here](https://github.com/hellokaton/excel-plus/blob/master/src/test/java/io/github/biezhi/excel/plus/examples)\n\n# Thanks\n\n- [ydq](https://github.com/ydq)\n\n# License\n\n[Apache2](https://github.com/hellokaton/excel-plus/blob/master/LICENSE)\n","funding_links":[],"categories":["Java"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellokaton%2Fexcel-plus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhellokaton%2Fexcel-plus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhellokaton%2Fexcel-plus/lists"}