{"id":21537114,"url":"https://github.com/rabanti-github/picoxlsx4j","last_synced_at":"2025-10-26T02:51:49.830Z","repository":{"id":57715631,"uuid":"44138618","full_name":"rabanti-github/PicoXLSX4j","owner":"rabanti-github","description":"PicoXLSX4j is a small Java library to create XLSX files (Microsoft Excel 2007 or newer) in an easy and native way. It is a direct port of PicoXLSX for C#","archived":false,"fork":false,"pushed_at":"2022-11-11T21:08:02.000Z","size":7537,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T02:12:37.484Z","etag":null,"topics":["excel","excelwriter","java","microsoft-office","ooxml","spreadsheet","xlsx"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rabanti-github.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-10-12T22:55:19.000Z","updated_at":"2022-11-22T12:41:03.000Z","dependencies_parsed_at":"2022-09-11T15:11:58.581Z","dependency_job_id":null,"html_url":"https://github.com/rabanti-github/PicoXLSX4j","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rabanti-github%2FPicoXLSX4j","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rabanti-github%2FPicoXLSX4j/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rabanti-github%2FPicoXLSX4j/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rabanti-github%2FPicoXLSX4j/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rabanti-github","download_url":"https://codeload.github.com/rabanti-github/PicoXLSX4j/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248142903,"owners_count":21054671,"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","excelwriter","java","microsoft-office","ooxml","spreadsheet","xlsx"],"created_at":"2024-11-24T03:28:04.399Z","updated_at":"2025-10-26T02:51:44.780Z","avatar_url":"https://github.com/rabanti-github.png","language":"Java","readme":"# PicoXLSX4j ![PicoXLSX](https://rabanti-github.github.io/PicoXLSX/icons/PicoXLSX.png)\r\n\r\n## \u003cspan style=\"color:red\"\u003eImportant: This project is (currently) deprecated.\u003cbr\u003ePlease have a look at [NanoXLSX4j](https://github.com/rabanti-github/NanoXLSX4j) that is actively maintained.\u003c/span\u003e\r\n\r\n\r\n![Maven Central](https://img.shields.io/maven-central/v/ch.rabanti/picoxlsx4j.svg?maxAge=86400)\r\n![license](https://img.shields.io/github/license/rabanti-github/picoXlsx.svg)\r\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Frabanti-github%2FPicoXLSX4j.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Frabanti-github%2FPicoXLSX4j?ref=badge_shield)\r\n\r\nPicoXLSX4j is a small Java library to create XLSX files (Microsoft Excel 2007 or newer) in an easy and native way. It is a direct port of [PicoXLSX for C#](https://github.com/rabanti-github/PicoXLSX)\r\n\r\n* No need for an installation of Microsoft Office\r\n* No need for Office interop/DCOM or other bridging libraries\r\n* No need for 3rd party libraries\r\n* Pure usage of standard JRE\r\n\r\n**Please have a look at the successor library [NanoXLSX4j](https://github.com/rabanti-github/NanoXLSX4j) for reader support.**\r\n\r\nProject website: [https://picoxlsx.rabanti.ch](https://picoxlsx.rabanti.ch)\r\n\r\nSee the **[Change Log](https://github.com/rabanti-github/PicoXLSX4j/blob/master/Changelog.md)** for recent updates.\r\n\r\n## What's new in version 2.x\r\n\r\n* Changed package structure to ch.rabanti.picoxlsx4j\r\n* Added Maven support (available in Maven Central under ch.rabanti.picoxlsx4j)\r\n* Complete replacement of the old style handling\r\n* Added appending of styles for an easier composition of complex styles\r\n* Added more options to assign styles to cells\r\n* Added Shortener (property WS) to reduce the code overhead\r\n* Added static methods for the most important formulas (round, floor, ceil, min, max, average, median, sum, vlookup)\r\n* Added Save option to save the XLSX file as stream\r\n* Added an option for sanitizing of worksheet names\r\n* Replaced specific exception classes with general exceptions (e.g. StyleException, FormatException or WorksheetException)\r\n* Added functions to retrieve stored data and the current cell address\r\n* Many internal optimizations and additional documentation\r\n\r\n## Requirements\r\n\r\nPicoXLSX4j was initially created with Java 8 and currently build with OpenJDK 11\r\nThe only requirement for development is an up-to-date Java environment (OpenJDK 11 or higher recommended)\r\n\r\n## Installation\r\n\r\n### As JAR\r\n\r\nSimply place the PicoXLSX4j jar file (e.g. **picoxlsx4j-2.6.0.jar**) into the lib folder of your project and create a library reference to it in your IDE.\r\n\r\n### As source files\r\n\r\nPlace all .java files from the PicoXLSX4j source folder into your project. The folder structure defines the packages. Please use refactoring if you want to relocate the files.\r\n\r\n### Maven\r\n\r\nAdd the following information to your POM file within the ```\u003cdependencies\u003e``` tag:\r\n\r\n```xml\r\n\u003cdependency\u003e\r\n    \u003cgroupId\u003ech.rabanti\u003c/groupId\u003e\r\n    \u003cartifactId\u003epicoxlsx4j\u003c/artifactId\u003e\r\n    \u003cversion\u003e2.6.0\u003c/version\u003e\r\n\u003c/dependency\u003e\r\n```\r\n\r\n**Important:** The version number may change.\r\nPlease see the version number of Maven Central at the top of the README (maven-central badge) or check the [Change Log](https://github.com/rabanti-github/PicoXLSX4j/blob/master/Changelog.md) for the most recent version. The keywords ```LATEST```  and ```RELEASE``` are only valid in Maven 2, not 3 and newer.\r\n\r\n## Usage\r\n\r\n### Quick Start (shortened syntax)\r\n\r\n```java\r\n Workbook workbook = new Workbook(\"myWorkbook.xlsx\", \"Sheet1\");         // Create new workbook with a worksheet called Sheet1\r\n workbook.WS.value(\"Some Data\");                                        // Add cell A1\r\n workbook.WS.formula(\"=A1\");                                            // Add formula to cell B1\r\n workbook.WS.down();                                                    // Go to row 2\r\n workbook.WS.value(new Date(), BasicStyles.Bold());                     // Add formatted value to cell A2\r\n try{\r\n   workbook.save();                                                     // Save the workbook as myWorkbook.xlsx\r\n } catch (Exception ex) {}\r\n```\r\n\r\n### Quick Start (regular syntax)\r\n\r\n```java\r\n Workbook workbook = new Workbook(\"myWorkbook.xlsx\", \"Sheet1\");       // Create new workbook with a worksheet called Sheet1\r\n workbook.getCurrentWorksheet().addNextCell(\"Some Data\");             // Add cell A1\r\n workbook.getCurrentWorksheet().addNextCell(42);                      // Add cell B1\r\n workbook.getCurrentWorksheet().goToNextRow();                        // Go to row 2\r\n workbook.getCurrentWorksheet().addNextCell(new Date());              // Add cell A2\r\n try {\r\n   workbook.Save();                                                   // Save the workbook as myWorkbook.xlsx\r\n } catch (Exception ex) {}\r\n```\r\n\r\n## Further References\r\n\r\nSee the full **API-Documentation\u003c/b\u003e at: [https://rabanti-github.github.io/PicoXLSX4j/](https://rabanti-github.github.io/PicoXLSX4j/).\r\nThe [Demo class](https://github.com/rabanti-github/PicoXLSX4j/blob/master/src/main/java/ch/rabanti/picoxlsx4j/demo/PicoXLSX4j.java) contains 13 simple use cases. You can also look at the full API documentation or the Javadoc annotations in the particular .java files.\r\n\r\n## License\r\n\r\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Frabanti-github%2FPicoXLSX4j.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Frabanti-github%2FPicoXLSX4j?ref=badge_large)","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frabanti-github%2Fpicoxlsx4j","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frabanti-github%2Fpicoxlsx4j","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frabanti-github%2Fpicoxlsx4j/lists"}