Spire.XLS for Java

Java Excel Library – Create Read Modify Print Convert Excel Documents in Java

  • Overview
  • Features
  • Support
  • What's New
  • Live Demo

Standalone Java API
to Process Excel Worksheets

Over 1,000,000 Developers Are Already Using Our Libraries
To Create Their Amazing Applications.

Spire.XLS for Java is a professional Java Excel API that enables developers to create, manage, manipulate, convert and print Excel worksheets without using Microsoft Office or Microsoft Excel.


Spire.XLS for Java supports both for the old Excel 97-2003 format (.xls) and for the new Excel 2007, Excel 2010, Excel 2013, Excel 2016 and Excel 2019 (.xlsx, .xlsb, .xlsm), along with Open Office (.ods) format. Spire.XLS for Java offers a wide range of features of operating Excel worksheets on Java applications, such as creating, reading, editing, converting and printing Excel worksheets, finding and replacing data, creating charts, insert/extract/delete textboxes, creating auto filters, reading and writing hyperlinks, merging/unmerging cells and files, grouping/ungrouping rows and columns, freezing/unfreezing panes, adding digital signatures, encrypting/decrypting Excel workbooks etc.

  • Convert

  • Export

  • Validate

  • Formula

  • Format

  • Chart

  • Pivot Table

  • Group

  • Merge

  • Highlight

Convert Excel to PDF

Whenever you need to share an important Excel report with a partner, it's best to convert the file to PDF to ensure it looks the same as it does on your device.

Export Data from Database to Excel

When data is exported from a database to Excel, it can be analyzed and visualized, as well as viewed and processed by users who are not database users.

Apply Data Validation

Data validation in Excel controls what kind of data can be entered into a certain cell, which ensures that all data entries are accurate and consistent.

Insert Formulas and Functions

Formula is an expression that calculates values in a cell or in a range of cells, while function is a predefined formula already available in Excel. Both formulas and functions are very useful when you need to calculate numbers or solve math problems in Excel.

Apply Conditional Formatting

Conditional formatting is a helpful feature that allows applying special formats to cells meeting specific criteria. It is often used to emphasize or differentiate data stored in worksheets.

Create a Chart

Chart is a fantastic tool to visually group and analyze data. It provides the reader with the structure of the data set and displays the data in a graphical representation, making it easier for most users to see the data.

Create a Pivot Table

Pivot table is a kind of interactive table that allow users to quickly categorize, calculate, summarize and analyze large amounts of data in a concise tabular format.

Group Rows or Columns

For worksheets with large amounts of data, grouping rows or columns that contain similar information can make the worksheet more compact and understandable.

Merge Excel Files

Merging Excel files with associated content can help us work with worksheet data more easily and also make it easier to share and read the contents of our workbooks.

Find and Highlight

You can find all cells containing a specific value and highlight them with the same background color to make the value outstanding and more easily to be found out.

JAVA

Standalone Java Component

100% independent Java Excel class library
Doesn't require Microsoft Office installed on system.

VERSION

  • Excel 97-2003
  • Excel 2007
  • Excel 2010
  • Excel 2013
  • Excel 2016
  • Excel 2019
  • OpenOffice

OPERATION

Powerful Toolset, Multichannel Support

  • Import and Export Data

  • Reports

  • Manage Comments

  • Work with Pivot Table

  • Work with Excel Charts

  • Images and Shapes

  • Find Replace Highlight

  • Manage Hyperlinks

  • Print

  • Header and Footer

  • Text and Image Watermark

  • Conditional Formatting

  • Excel Formula

  • Set auto-filters
    & Page Breaks

  • Merge Split Cells
    and Files

  • Protect, Encrypt, Decrypt

  • Add Digital Signature

CONVERSION

Convert File Documents with High Quality

  • TEXT

  • XPS

  • SVG

  • PDF

  • XML

  • Image

XLsx,XLSM,XLSB,ODS

  • CSV

  • HTML

  • PNG

  • BMP

  • JPEG

  • EMF

  • TIFF

  1. Chart

Excel

MAIN FUNCTION

Only Spire.XLS for Java, No Microsoft Office

Spire.XLS for Java is a totally independent Excel library, Microsoft Office or Microsoft Excel is not required in order to use Spire.XLS for Java.

High Quality File Conversion

Spire.XLS for Java allows converting files from Excel to PDF, HTML, ODS, CSV, Text (TXT), Image, XML, SVG, PostScript, XPS etc. And on the other hand, most of popular files can be transferred to Excel back, such as converting HTML, CSV, XLSX, XML to Excel.

Support a Rich Set of Excel Elements

Spire.XLS for Java supports a rich set of Excel elements, including comment, pivot table, charts, shapes, tables, images, hyperlinks, reports, add digital signature, text/image watermark, Excel formula and many more. Spire.XLS for Java also embeds many flexible options for displaying worksheets, such as page breaks, zoom-setting, freeze panes, headers/footers, print excel files, print paper size and print area etc.

Easy Integration

Spire.XLS for Java can be easily integrated into Java applications.

Commercial Edition $999

Compared with Free Spire.XLS for Java, the commercial edition of Spire.XLS for Java has no limitation on the number of worksheets and rows. It is more comprehensive in processing Excel files.


Free Edition $0

Free version is limited to 5 sheets per workbook and 200 rows per sheet. This limitation is enforced during reading or writing XLS files. When converting Excel files to PDF files, you can only get the first 3 pages of PDF file.

GET STARTED

Free Trials for All Progress Solutions

Here is a brief summary of Spire.XLS for Java features.

File Format Supports

  • Spire.XLS for Java offers support both for the old Excel 97-2003 format (.xls) and for the new Excel 2007,Excel 2010, Excel 2013, Excel 2016 and Excel 2019 (.xlsx, .xlsb, .xlsm), along with Open Office(.ods) format.
  • Load and save documents in the tab delimited file format.
  • Comprehensive support of the CSV format to interact with a variety of applications.
  • Easily extract text by saving in plain text format.

Conversion

Contents Features

Formatting Features

Page Setup Features

We guarantee one business day Forum questions Reply.

We guarantee one business day E-mail response.

Free Customized service for OEM Users.

Skype name: iceblue.support

Apply for a Free Trial License File.

If you have tried out Spire.XLS for Java and found it useful, please consider sharing your experience with others. By sharing your testimonial with us, you will not only help others to make the right decision but will also to earn rewards from us. Please send your testimonials to sales@e-iceblue.com.

This is the list of changelogs of Spire.XLS for Java New release and hotfix. You can get the detail information of each version's new features and bug solutions.

Download Spire.XLS for Java to start a free trial:

Version: 14.11.0

Category ID Description
Bug SPIREXLS-5446 Fixes the issue that the program threw "Specified argument was out of the range of valid values" when converting XLSX to XLSB.
Bug SPIREXLS-5493 Fixes the issue that incorrect effect occurred when using Worksheet.autoFitColumn.
Bug SPIREXLS-5516 Fixes the issue that content got lost when converting Excel to PDF.
Bug SPIREXLS-5526 Fixes the issue that font sizes were inconsistent after saving some Excel files.

Version: 14.9.8

Category ID Description
New feature SPIREXLS-5371 Supports the revision function.
Workbook workbook = new Workbook();
workbook.loadFromFile("input.xlsx");
workbook.setTrackedChanges(true);  
workbook.acceptAllTrackedChanges(); 
workbook.saveToFile("output.xlsx", ExcelVersion.Version2013);
workbook.dispose();
New feature SPIREXLS-5362 Optimizes the speed of converting Excel documents to HTML documents.
Bug SPIREXLS-5149 Fixes the issue that print area settings are not fully copied when duplicating worksheets.
Bug SPIREXLS-5295 Fixes the issue that some data is incorrect when converting Excel documents to PDF documents.
Bug SPIREXLS-5368 Fixes the issue that chart contents are lost when converting worksheets to images.
Bug SPIREXLS-5368 Fixes the issue that the program throws an exception "Input string was not in the correct format." when converting charts to images.
Bug SPIREXLS-5432 Fixes the issue that the program throws a java.lang.IllegalArgumentException exception when loading Excel documents.
Bug SPIREXLS-5435 Fixes the issue that conditional formatting is lost when converting Excel documents to XML documents and then back to Excel documents.
Bug SPIREXLS-5441 Fixes the issue that the program throws a java.lang.OutOfMemoryError exception when converting Excel documents to PDF documents.
Bug SPIREXLS-5442 Fixes the issue that fonts are incorrect when converting Excel documents to PDF documents.

Version: 14.8.2

Category ID Description
New feature SPIREXLS-5147 Provides the hideCategoriTags method to support hiding category labels.
Chart chart = sheet.getCharts().get(0);
String[] labels = chart.getCategoryLabels();
chart.hideCategoryLabels(new String[]
{ labels [0], labels [1], ...}
); 
New feature SPIREXLS-5338 Supports embedding images in cells.
worksheet.getCellRange("B1").insertOrUpdateCellImage("D:\\vs1.png",true);
Bug SPIREXLS-5331 Fixes the issue that caused incorrect content when saving an Excel document and opening it in Microsoft Excel 2016.
Bug SPIREXLS-5337 Fixes the issue that resulted in incorrect pivot table data calculation.

Version: 14.7.5

Category ID Description
Bug SPIREXLS-5279 Fixed the issue that some formula values are calculated incorrectly when saving Excel files.
Bug SPIREXLS-5281 Fixed the issue that the data points of charts were incorrectly positioned after converting Excel to PDF.
Bug SPIREXLS-5282 Fixes the issue that the parameters received by the createGroup method for pivot table grouping were incorrect.
Bug SPIREXLS-5288 Fixes the issue that the trend line added to a chart was not displayed in the WPS tool.
Bug SPIREXLS-5294 Fixed the issue that the effect of printing Excel was incorrect after setting PrintErrorsType.NA.
Bug SPIREXLS-5318 Fix the issue that the content was lost after converting Excel to PDF.

Version: 14.6.2

Category ID Description
Bug SPIREXLS-5223 Fixes the issue that the formula values were calculated incorrectly when transferring Excel to images.
Bug SPIREXLS-5238 Fixes the issue that the effect of setting "autoFitColumns()" was incorrect.
Bug SPIREXLS-5256 Fixes the issue that an exception "com.spire.xls.packages.spramg: Invalid cell name" was thrown when loading an Excel document.
Bug SPIREXLS-5263 Fixes the issue that annotations added by Microsoft 365 in Excel documents were lost after loading and saving.

Version: 14.5.1

Category ID Description
Bug SPIREXLS-5215 Fixes the issue that the program threw "NullPointerException" when converting an Excel document to an HTML document.
Bug SPIREXLS-5219 Fixes the issue that the content of charts was incorrect after converting them to pictures.
Bug SPIREXLS-5221 Fixes the issue that the program threw "NullPointerException" exception when calling calculateAllValue() method to calculate formulas and convert Excel documents to pictures.
Bug SPIREXLS-5222 Fixes the issue that the chart content was incorrect after converting an Excel document to a PDF document.
Bug SPIREXLS-5224 Fixes an issue that the chart style was incorrect after loading and saving an XLSM document.
Bug SPIREXLS-5230 Fixes the issue that the XLOOKUP formula was calculated incorrectly.

Version: 14.4.4

Category ID Description
New feature SPIREXLS-5111 Adds a new method for converting Excel worksheets to SVG documents, with support for returning SVG dimensions.
Workbook workbook = new Workbook();
workbook.loadFromFile("1.xlsx");
Worksheet sheet = workbook.getWorksheets().get(0);
FileOutputStream stream = new FileOutputStream(outputFile);
Dimension dimension = sheet.toSVGStream(stream, sheet.getFirstRow(), sheet.getFirstColumn(), sheet.getLastRow(), sheet.getLastColumn());
double Height = dimension.getHeight();
double Width = dimension.getWidth();
Bug SPIREXLS-5077 Fixes the issue that the text positions were incorrect when converting an Excel document to a PDF document.
Bug SPIREXLS-5130 Fixes the issue that the hyperlinks were lost when converting an Excel document to an HTML document.
Bug SPIREXLS-5140 Fixes the issue that the right margin increased when converting an Excel document to a PDF document in a Japanese language environment.
Bug SPIREXLS-5150 Fixes the issue that the content was lost when converting an Excel document to a PDF document.
Bug SPIREXLS-5178 Fixes the issue that adding custom filters did not take effect.
Bug SPIREXLS-5179 Fixes the issue that the image scale was distorted when converting an Excel document to a PDF document.
Bug SPIREXLS-5180 Fixes the issue that the program hangs indefinitely when converting an HTML document to an Excel document.
Bug SPIREXLS-5184 Fixes the issue that the tables were incomplete when converting an Excel document to an HTML document.

Version: 14.4.1

Category ID Description
Bug SPIREPDF-5187 Fixes the issue that the application threw the “java.lang.IllegalArgumentException” exception when converting an Excel document to an OFD document.

Version: 14.3.2

Category ID Description
Bug SPIREXLS-5096 Optimize the issue that the memory consumption is high when parsing Excel documents.
Bug SPIREXLS-5136 Fix the issue that it reported an error when opening an Excel document after loading and saving it directly.
Bug SPIREXLS-5138 Fix the issue that shapes were lost after copying the worksheet table.

Version: 14.3.0

Function API
Calculate document public String excelGenerate(List ranges)
Merge ranges public String excelMerge(CellRange descRange, List srcRanges, CellRange titleRange)
Generate images public InputStream imageGenerate(String description)
Generate images with specified size public InputStream imageGenerate(String description, ImageGenerationModel model, ImageGenerationSize size)
Upload files public String uploadFile(String fileName, InputStream stream)
Upload workbooks public String uploadWorkbook(Workbook workbook)
Ask a question about the document public String documentSearch(String question, String file_server_path, boolean enableHistory)
public String documentSearch(String question, String file_server_path, Map options, boolean enableHistory)
Search public String search(String question, String language, boolean enableHistory)
Translate worksheets public String excelTranslate(List srcWorksheets, String language, boolean translateSheetName)
Translate ranges public String excelTranslate(List srcRanges, String language)
Fill out Excel worksheets public String excelFill(CellRange dataRange, CellRange descRange, boolean containTitle, List fillColumnIndexs)
public String excelFill(CellRange dataRange, CellRange descRange, boolean containTitle, List fillColumnIndexs, List keys)
Question public String ask(String question, boolean enableHistory)
Clear user history public String resetUserHistory()
Clear history sessions public String resetChatHistory(String sessionid)
Request free customized demo just for you.

Tab 1

Upload

Maximum file size: 1 MB. Files accepted: xls, xlsx, xlsb, ods.
Click here to browse files.
fileerrors

Convert to

Source file:
filename
Target file type:

Tab 2

Tab 3

Tab 4

Mathematic Functions:

Calculate symbol : Calculate Data:

Logic Function:

Calculate symbol : Calculate Data:

Simple Expression:

Calculate symbol : Calculate Data:

MID Functions:

Text : Start Number:
Number Charts:

Option:

Excel Version:
downloads

Tab 5

Data

fileerrors

Option

Excel Version:
downloads

If you don't find the function you want, please fill in a form to request a free demo from us. Make sure the demo you want meets the following requirements:

  • It is a small project that implements a particular scenario.
  • It relates to our libraries stored on E-iceblue online store.
  • It costs less than 2 hours for us to complete it.
  • It is not a bug report.
  • It is not a feature request.