Class CellRangeAddressList

  • All Implemented Interfaces:
    GenericRecord

    public class CellRangeAddressList
    extends Object
    implements GenericRecord
    Implementation of the cell range address lists,like is described in OpenOffice.org's Excel Documentation: excelfileformat.pdf sec 2.5.14 - 'Cell Range Address List' In BIFF8 there is a common way to store absolute cell range address lists in several records (not formulas). A cell range address list consists of a field with the number of ranges and the list of the range addresses. Each cell range address (called an ADDR structure) contains 4 16-bit-values.
    • Field Detail

      • _list

        protected final List<CellRangeAddress> _list
        List of CellRangeAddresses. Each structure represents a cell range
    • Constructor Detail

      • CellRangeAddressList

        public CellRangeAddressList()
      • CellRangeAddressList

        public CellRangeAddressList​(int firstRow,
                                    int lastRow,
                                    int firstCol,
                                    int lastCol)
        Convenience constructor for creating a CellRangeAddressList with a single CellRangeAddress. Other CellRangeAddresses may be added later.
      • CellRangeAddressList

        public CellRangeAddressList​(RecordInputStream in)
        Parameters:
        in - the RecordInputstream to read the record from
    • Method Detail

      • countRanges

        public int countRanges()
        Get the number of following ADDR structures. The number of this structures is automatically set when reading an Excel file and/or increased when you manually add a new ADDR structure . This is the reason there isn't a set method for this field .
        Returns:
        number of ADDR structures
      • addCellRangeAddress

        public void addCellRangeAddress​(int firstRow,
                                        int firstCol,
                                        int lastRow,
                                        int lastCol)
        Add a cell range structure.
        Parameters:
        firstRow - - the upper left hand corner's row
        firstCol - - the upper left hand corner's col
        lastRow - - the lower right hand corner's row
        lastCol - - the lower right hand corner's col
      • addCellRangeAddress

        public void addCellRangeAddress​(CellRangeAddress cra)
      • getCellRangeAddress

        public CellRangeAddress getCellRangeAddress​(int index)
        Returns:
        CellRangeAddress at the given index
      • getSize

        public int getSize()
      • getEncodedSize

        public static int getEncodedSize​(int numberOfRanges)
        Returns:
        the total size of for the specified number of ranges, including the initial 2 byte range count
      • serialize

        public int serialize​(int offset,
                             byte[] data)