Java Excel API

This is an old revision of this page, as edited by Great Brightstar (talk | contribs) at 03:09, 3 January 2022 (Minor fix). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

JXL API (a.k.a. Java Excel API) allows users to read, write, create, and modify sheets in an Excel (.xls) workbook at runtime. It doesn't support .xlsx format.[2]

JXL
Developer(s)Andy Khan, Eric H. Jung
Stable release
2.6.12
Written inJava
Operating systemCross-platform
TypeAPI to access Microsoft Excel format
LicenseGNU GPL v2[1]
Websitejexcelapi.sourceforge.net

Microsoft Excel support

JXL API supports Excel documents with versions Excel 95, 97, 2000, XP, and 2003. These documents hold the extension .xls.[2]

Usage

JXL API is widely used with Selenium.

Example

Sample code to write to an Excel file might look like as follows:

import java.io.File;
import jxl.Workbook;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.Label;
import jxl.write.WriteException;

public class DataSheet
{
    private Workbook wbook;
    private WritableWorkbook wwbCopy;
    private WritableSheet shSheet;

    public void readExcel()
    {
        try
        {
            wbook = Workbook.getWorkbook(new File("path/testSampleData.xls"));
            wwbCopy = Workbook.createWorkbook(new File("path/testSampleDataCopy.xls"), wbook);
            shSheet = wwbCopy.getSheet(0);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
   
    public void setValueIntoCell(String strSheetName, int iColumnNumber, int iRowNumber, String strData) throws WriteException
    {
        WritableSheet wshTemp = wwbCopy.getSheet(strSheetName);
        Label labTemp = new Label(iColumnNumber, iRowNumber, strData);
               
        try 
        {
            wshTemp.addCell(labTemp);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
   
    public void closeFile()
    {
        try 
        {
            // Closing the writable work book
            wwbCopy.write();
            wwbCopy.close();

            // Closing the original work book
            wbook.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
   
    public static void main(String[] args) throws WriteException
    {
        DataSheet ds = new DataSheet();
        ds.readExcel();
        ds.setValueIntoCell("sheet1", 5, 1, "PASS");
        ds.setValueIntoCell("sheet1", 5, 2, "FAIL");
        ds.setValueIntoCell("sheet1", 5, 3, "PASS");
        ds.closeFile();
    }
}

[3]

See also

References

  1. ^ "jxl". Sourceforge. Sourceforge. Retrieved 1 February 2016.
  2. ^ a b Sams, P. (2015). Selenium Essentials. Birmingham: Packt publishing Ltd. p. 133.
  3. ^ "How to Set Data into Excel sheet using jxl". Selenium Easy. Selenium Easy. Retrieved 1 February 2016.