Java Excel API

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Java Excel API
DevelopersAndy Khan, Eric H. Jung
Stable release
2.6.12 / 8 October 2012
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inJava
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemCross-platform
    TypeAPI to access Microsoft Excel format
    LicenseGNU LGPL v2.1+[1]
    Websitejexcelapi.sourceforge.net

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

    Microsoft Excel support

    [edit | edit source]

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

    Usage

    [edit | edit source]

    Java Excel API is widely used with Selenium.

    Example

    [edit | edit source]

    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

    [edit | edit source]

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]