Package jxl.write

Class WritableWorkbook


  • public abstract class WritableWorkbook
    extends java.lang.Object
    A writable workbook
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method Description
      abstract void addNameArea​(java.lang.String name, WritableSheet sheet, int firstCol, int firstRow, int lastCol, int lastRow)
      Add new named area to this workbook with the given information.
      abstract void close()
      Closes this workbook, and makes any memory allocated available for garbage collection.
      void copy​(Workbook w)
      Deprecated.
      Copying now occurs implicitly as part of the overloaded factory method Workbook.createWorkbood
      abstract void copySheet​(int s, java.lang.String name, int index)
      Copy sheet within the same workbook.
      abstract void copySheet​(java.lang.String s, java.lang.String name, int index)
      Copies the specified sheet and places it at the index specified by the parameter
      abstract WritableSheet createSheet​(java.lang.String name, int index)
      Creates, and returns a worksheet at the specified position with the specified name If the index specified is less than or equal to zero, the new sheet is created at the beginning of the workbook.
      abstract Range[] findByName​(java.lang.String name)
      Gets the named range from this workbook.
      abstract WritableCell findCellByName​(java.lang.String name)
      Gets the named cell from this workbook.
      abstract int getNumberOfSheets()
      Returns the number of sheets in this workbook
      abstract java.lang.String[] getRangeNames()
      Gets the named ranges
      abstract WritableSheet getSheet​(int index)
      Gets the specified sheet within this workbook
      abstract WritableSheet getSheet​(java.lang.String name)
      Gets the sheet with the specified name from within this workbook
      abstract java.lang.String[] getSheetNames()
      Gets the sheet names
      abstract WritableSheet[] getSheets()
      Gets the sheets within this workbook.
      abstract WritableCell getWritableCell​(java.lang.String loc)
      Returns the cell for the specified location eg.
      abstract WritableSheet importSheet​(java.lang.String name, int index, Sheet s)
      Imports a sheet from a different workbook.
      abstract WritableSheet moveSheet​(int fromIndex, int toIndex)
      Moves the specified sheet within this workbook to another index position.
      abstract void removeRangeName​(java.lang.String name)
      Removes the specified named range from the workbook.
      abstract void removeSheet​(int index)
      Removes the sheet at the specified index from this workbook
      abstract void setColourRGB​(Colour c, int r, int g, int b)
      Sets the RGB value for the specified colour for this workbook
      abstract void setOutputFile​(java.io.File fileName)
      Sets a new output file.
      abstract void setProtected​(boolean prot)
      Indicates whether or not this workbook is protected
      abstract void write()
      Writes out the data held in this workbook in Excel format
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • ARIAL_10_PT

        public static final WritableFont ARIAL_10_PT
        The default font for Cell formats
      • HYPERLINK_FONT

        public static final WritableFont HYPERLINK_FONT
        The font used for hyperlinks
      • NORMAL_STYLE

        public static final WritableCellFormat NORMAL_STYLE
        The default style for cells
      • HYPERLINK_STYLE

        public static final WritableCellFormat HYPERLINK_STYLE
        The style used for hyperlinks
      • HIDDEN_STYLE

        public static final WritableCellFormat HIDDEN_STYLE
        A cell format used to hide the cell contents
    • Method Detail

      • getSheets

        public abstract WritableSheet[] getSheets()
        Gets the sheets within this workbook. Use of this method for large worksheets can cause performance problems.
        Returns:
        an array of the individual sheets
      • getSheetNames

        public abstract java.lang.String[] getSheetNames()
        Gets the sheet names
        Returns:
        an array of strings containing the sheet names
      • getSheet

        public abstract WritableSheet getSheet​(int index)
                                        throws java.lang.IndexOutOfBoundsException
        Gets the specified sheet within this workbook
        Parameters:
        index - the zero based index of the reQuired sheet
        Returns:
        The sheet specified by the index
        Throws:
        java.lang.IndexOutOfBoundsException - when index refers to a non-existent sheet
      • getSheet

        public abstract WritableSheet getSheet​(java.lang.String name)
        Gets the sheet with the specified name from within this workbook
        Parameters:
        name - the sheet name
        Returns:
        The sheet with the specified name, or null if it is not found
      • getWritableCell

        public abstract WritableCell getWritableCell​(java.lang.String loc)
        Returns the cell for the specified location eg. "Sheet1!A4". This is identical to using the CellReferenceHelper with its associated performance overheads, consequently it should be use sparingly
        Parameters:
        loc - the cell to retrieve
        Returns:
        the cell at the specified location
      • getNumberOfSheets

        public abstract int getNumberOfSheets()
        Returns the number of sheets in this workbook
        Returns:
        the number of sheets in this workbook
      • close

        public abstract void close()
                            throws java.io.IOException,
                                   WriteException
        Closes this workbook, and makes any memory allocated available for garbage collection. Also closes the underlying output stream if necessary.
        Throws:
        java.io.IOException
        WriteException
      • createSheet

        public abstract WritableSheet createSheet​(java.lang.String name,
                                                  int index)
        Creates, and returns a worksheet at the specified position with the specified name If the index specified is less than or equal to zero, the new sheet is created at the beginning of the workbook. If the index is greater than the number of sheet, then the sheet is created at the end of the workbook.
        Parameters:
        name - the sheet name
        index - the index number at which to insert
        Returns:
        the new sheet
      • importSheet

        public abstract WritableSheet importSheet​(java.lang.String name,
                                                  int index,
                                                  Sheet s)
        Imports a sheet from a different workbook. Does a deep copy on all elements within that sheet
        Parameters:
        name - the name of the new sheet
        index - the position for the new sheet within this workbook
        sheet - the sheet (from another workbook) to merge into this one
        Returns:
        the new sheet
      • copySheet

        public abstract void copySheet​(int s,
                                       java.lang.String name,
                                       int index)
        Copy sheet within the same workbook. The sheet specified is copied to the new sheet name at the position
        Parameters:
        s - the index of the sheet to copy
        name - the name of the new sheet
        index - the position of the new sheet
      • copySheet

        public abstract void copySheet​(java.lang.String s,
                                       java.lang.String name,
                                       int index)
        Copies the specified sheet and places it at the index specified by the parameter
        Parameters:
        s - the name of the sheet to copy
        name - the name of the new sheet
        index - the position of the new sheet
      • removeSheet

        public abstract void removeSheet​(int index)
        Removes the sheet at the specified index from this workbook
        Parameters:
        index - the sheet index to remove
      • moveSheet

        public abstract WritableSheet moveSheet​(int fromIndex,
                                                int toIndex)
        Moves the specified sheet within this workbook to another index position.
        Parameters:
        fromIndex - the zero based index of the required sheet
        toIndex - the zero based index of the required sheet
        Returns:
        the sheet that has been moved
      • write

        public abstract void write()
                            throws java.io.IOException
        Writes out the data held in this workbook in Excel format
        Throws:
        java.io.IOException
      • setProtected

        public abstract void setProtected​(boolean prot)
        Indicates whether or not this workbook is protected
        Parameters:
        prot - Protected flag
      • setColourRGB

        public abstract void setColourRGB​(Colour c,
                                          int r,
                                          int g,
                                          int b)
        Sets the RGB value for the specified colour for this workbook
        Parameters:
        c - the colour whose RGB value is to be overwritten
        r - the red portion to set (0-255)
        g - the green portion to set (0-255)
        b - the blue portion to set (0-255)
      • copy

        public void copy​(Workbook w)
        Deprecated.
        Copying now occurs implicitly as part of the overloaded factory method Workbook.createWorkbood
        This method can be used to create a writable clone of some other workbook
        Parameters:
        w - the workdoock to copy
      • findCellByName

        public abstract WritableCell findCellByName​(java.lang.String name)
        Gets the named cell from this workbook. The name refers to a range of cells, then the cell on the top left is returned. If the name cannot be, null is returned
        Parameters:
        name - the name of the cell/range to search for
        Returns:
        the cell in the top left of the range if found, NULL otherwise
      • findByName

        public abstract Range[] findByName​(java.lang.String name)
        Gets the named range from this workbook. The Range object returns contains all the cells from the top left to the bottom right of the range. If the named range comprises an adjacent range, the Range[] will contain one object; for non-adjacent ranges, it is necessary to return an array of length greater than one. If the named range contains a single cell, the top left and bottom right cell will be the same cell
        Parameters:
        name - the name of the cell/range to search for
        Returns:
        the range of cells
      • getRangeNames

        public abstract java.lang.String[] getRangeNames()
        Gets the named ranges
        Returns:
        the list of named cells within the workbook
      • removeRangeName

        public abstract void removeRangeName​(java.lang.String name)
        Removes the specified named range from the workbook. Note that removing a name could cause formulas which use that name to calculate their results incorrectly
        Parameters:
        name - the name to remove
      • addNameArea

        public abstract void addNameArea​(java.lang.String name,
                                         WritableSheet sheet,
                                         int firstCol,
                                         int firstRow,
                                         int lastCol,
                                         int lastRow)
        Add new named area to this workbook with the given information.
        Parameters:
        name - name to be created.
        sheet - sheet containing the name
        firstCol - first column this name refers to.
        firstRow - first row this name refers to.
        lastCol - last column this name refers to.
        lastRow - last row this name refers to.
      • setOutputFile

        public abstract void setOutputFile​(java.io.File fileName)
                                    throws java.io.IOException
        Sets a new output file. This allows the same workbook to be written to various different output files without having to read in any templates again
        Parameters:
        fileName - the file name
        Throws:
        java.io.IOException