## org.apache.poi.hssf.usermodel
Class HSSFRow

    java.lang.Object
      org.apache.poi.hssf.usermodel.HSSFRow

All Implemented Interfaces:
  java.lang.Iterable<Cell>, Row

    public final class HSSFRow

extends java.lang.Object
implements Row

High level representation of a row of a spreadsheet. Only rows that have cells should be added to a Sheet.

Author:
  Andrew C. Oliver (acoliver at apache dot org), Glen Stampoultzis (glens at apache.org)

Nested Class Summary

Nested classes/interfaces inherited from interface org.apache.poi.ss.usermodel.Row
`Row.MissingCellPolicy`

Field Summary
`static int` `INITIAL_CAPACITY`

Fields inherited from interface org.apache.poi.ss.usermodel.Row
`CREATE_NULL_AS_BLANK, RETURN_BLANK_AS_NULL, RETURN_NULL_AND_BLANK`

Method Summary
`java.util.Iterator<Cell>` `cellIterator()`
`int` `compareTo(java.lang.Object obj)`
`HSSFCell` `createCell(int column)` Use this to create new cells within the row and return it.
`HSSFCell` `createCell(int columnIndex, int type)` Use this to create new cells within the row and return it.
`HSSFCell` `createCell(short columnIndex)` Deprecated. (Aug 2008) use `createCell(int)`
`HSSFCell` `createCell(short columnIndex, int type)` Deprecated. (Aug 2008) use `createCell(int, int)`
`boolean` `equals(java.lang.Object obj)`
`HSSFCell` `getCell(int cellnum)` Get the hssfcell representing a given column (logical cell) 0-based.
`HSSFCell` `getCell(int cellnum, Row.MissingCellPolicy policy)` Get the hssfcell representing a given column (logical cell) 0-based.
`HSSFCell` `getCell(short cellnum)` Deprecated. (Aug 2008) use `getCell(int)`
`short` `getFirstCellNum()` get the number of the first cell contained in this row.
`short` `getHeight()` get the row's height or ff (-1) for undefined/default-height in twips (1/20th of a point)
`float` `getHeightInPoints()` get the row's height or ff (-1) for undefined/default-height in points (20*getHeight())
`short` `getLastCellNum()` Gets the index of the last cell contained in this row PLUS ONE.
`protected int` `getOutlineLevel()` Returns the rows outline level.
`int` `getPhysicalNumberOfCells()` gets the number of defined cells (NOT number of cells in the actual row!).
`int` `getRowNum()` get row number this row represents
`protected RowRecord` `getRowRecord()` get the lowlevel RowRecord represented by this object - should only be called by other parts of the high level API
`HSSFCellStyle` `getRowStyle()` Returns the whole-row cell styles.
`HSSFSheet` `getSheet()` Returns the HSSFSheet this row belongs to
`boolean` `getZeroHeight()` get whether or not to display this row with 0 height
`boolean` `isFormatted()` Is this row formatted? Most aren't, but some rows do have whole-row styles.
`java.util.Iterator` `iterator()` Alias for `cellIterator()` to allow foreach loops
`void` `moveCell(HSSFCell cell, short newColumn)` Moves the supplied cell to a new column, which must not already have a cell there!
`protected void` `removeAllCells()` Removes all the cells from the row, and their records too.
`void` `removeCell(Cell cell)` remove the HSSFCell from this row.
`void` `setHeight(short height)` set the row's height or set to ff (-1) for undefined/default-height.
`void` `setHeightInPoints(float height)` set the row's height in points.
`void` `setRowNum(int rowIndex)` set the row number of this row.
`void` `setRowStyle(CellStyle style)` Applies a whole-row cell styling to the row.
`void` `setRowStyle(HSSFCellStyle style)` Applies a whole-row cell styling to the row.
`void` `setZeroHeight(boolean zHeight)` set whether or not to display this row with 0 height

Methods inherited from class java.lang.Object
`clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### INITIAL_CAPACITY

    public static final int INITIAL_CAPACITY

See Also:
  Constant Field Values

Method Detail

### createCell

    public HSSFCell createCell(short columnIndex)

  Deprecated. (Aug 2008) use `createCell(int)`

### createCell

    public HSSFCell createCell(short columnIndex,
                               int type)

  Deprecated. (Aug 2008) use `createCell(int, int)`

### createCell

    public HSSFCell createCell(int column)

  Use this to create new cells within the row and return it.

  The cell that is returned is a CELL_TYPE_BLANK. The type can be changed either through calling `setCellValue` or `setCellType`.

  Specified by:
    `createCell` in interface `Row`
  Parameters:
    `column` - - the column number this cell represents
  Returns:
    HSSFCell a high level representation of the created cell.
  Throws:
    `java.lang.IllegalArgumentException` - if columnIndex < 0 or greater than 255, the maximum number of columns supported by the Excel binary format (.xls)

### createCell

    public HSSFCell createCell(int columnIndex,
                               int type)

  Use this to create new cells within the row and return it.

  The cell that is returned is a CELL_TYPE_BLANK. The type can be changed either through calling setCellValue or setCellType.

  Specified by:
    `createCell` in interface `Row`
  Parameters:
    `columnIndex` - - the column number this cell represents
  Returns:
    HSSFCell a high level representation of the created cell.
  Throws:
    `java.lang.IllegalArgumentException` - if columnIndex < 0 or greater than 255, the maximum number of columns supported by the Excel binary format (.xls)

### removeCell

    public void removeCell(Cell cell)

  remove the HSSFCell from this row.

  Specified by:
    `removeCell` in interface `Row`
  Parameters:
    `cell` - to remove

### removeAllCells

    protected void removeAllCells()

  Removes all the cells from the row, and their records too.

### setRowNum

    public void setRowNum(int rowIndex)

  set the row number of this row.

  Specified by:
    `setRowNum` in interface `Row`
  Parameters:
    `rowIndex` - the row number (0-based)
  Throws:
    `java.lang.IndexOutOfBoundsException` - if the row number is not within the range 0-65535.

### getRowNum

    public int getRowNum()

  get row number this row represents

  Specified by:
    `getRowNum` in interface `Row`
  Returns:
    the row number (0 based)

### getSheet

    public HSSFSheet getSheet()

  Returns the HSSFSheet this row belongs to

  Specified by:
    `getSheet` in interface `Row`
  Returns:
    the HSSFSheet that owns this row

### getOutlineLevel

    protected int getOutlineLevel()

  Returns the rows outline level. Increased as you put it into more groups (outlines), reduced as you take it out of them. TODO - Should this really be public?

### moveCell

    public void moveCell(HSSFCell cell,
                         short newColumn)

  Moves the supplied cell to a new column, which must not already have a cell there!

  Parameters:
    `cell` - The cell to move
    `newColumn` - The new column number (0 based)

### getCell

    public HSSFCell getCell(short cellnum)

  Deprecated. (Aug 2008) use `getCell(int)`

### getCell

    public HSSFCell getCell(int cellnum)

  Get the hssfcell representing a given column (logical cell) 0-based. If you ask for a cell that is not defined then you get a null, unless you have set a different `Row.MissingCellPolicy` on the base workbook.

  Specified by:
    `getCell` in interface `Row`
  Parameters:
    `cellnum` - 0 based column number
  Returns:
    HSSFCell representing that column or null if undefined.
  See Also:
    `Row.getCell(int, org.apache.poi.ss.usermodel.Row.MissingCellPolicy)`

### getCell

    public HSSFCell getCell(int cellnum,
                            Row.MissingCellPolicy policy)

  Get the hssfcell representing a given column (logical cell) 0-based. If you ask for a cell that is not defined, then your supplied policy says what to do

  Specified by:
    `getCell` in interface `Row`
  Parameters:
    `cellnum` - 0 based column number
    `policy` - Policy on blank / missing cells
  Returns:
    representing that column or null if undefined + policy allows.
  See Also:
    `Row.RETURN_NULL_AND_BLANK`, `Row.RETURN_BLANK_AS_NULL`, `Row.CREATE_NULL_AS_BLANK`

### getFirstCellNum

    public short getFirstCellNum()

  get the number of the first cell contained in this row.

  Specified by:
    `getFirstCellNum` in interface `Row`
  Returns:
    short representing the first logical cell in the row, or -1 if the row does not contain any cells.

### getLastCellNum

    public short getLastCellNum()

  Gets the index of the last cell contained in this row PLUS ONE. The result also happens to be the 1-based column number of the last cell. This value can be used as a standard upper bound when iterating over cells:

       short minColIx = row.getFirstCellNum();
       short maxColIx = row.getLastCellNum();
       for(short colIx=minColIx; colIx<maxColIx; colIx++) {
         HSSFCell cell = row.getCell(colIx);
         if(cell == null) {
           continue;
         }
         //... do something with cell
       }

  Specified by:
    `getLastCellNum` in interface `Row`
  Returns:
    short representing the last logical cell in the row PLUS ONE, or -1 if the row does not contain any cells.

### getPhysicalNumberOfCells

    public int getPhysicalNumberOfCells()

  gets the number of defined cells (NOT number of cells in the actual row!). That is to say if only columns 0,4,5 have values then there would be 3.

  Specified by:
    `getPhysicalNumberOfCells` in interface `Row`
  Returns:
    int representing the number of defined cells in the row.

### setHeight

    public void setHeight(short height)

  set the row's height or set to ff (-1) for undefined/default-height. Set the height in "twips" or 1/20th of a point.

  Specified by:
    `setHeight` in interface `Row`
  Parameters:
    `height` - rowheight or -1 for undefined (use sheet default)

### setZeroHeight

    public void setZeroHeight(boolean zHeight)

  set whether or not to display this row with 0 height

  Specified by:
    `setZeroHeight` in interface `Row`
  Parameters:
    `zHeight` - height is zero or not.

### getZeroHeight

    public boolean getZeroHeight()

  get whether or not to display this row with 0 height

  Specified by:
    `getZeroHeight` in interface `Row`
  Returns:
    - zHeight height is zero or not.

### setHeightInPoints

    public void setHeightInPoints(float height)

  set the row's height in points.

  Specified by:
    `setHeightInPoints` in interface `Row`
  Parameters:
    `height` - row height in points, `-1` means to use the default height

### getHeight

    public short getHeight()

  get the row's height or ff (-1) for undefined/default-height in twips (1/20th of a point)

  Specified by:
    `getHeight` in interface `Row`
  Returns:
    rowheight or 0xff for undefined (use sheet default)

### getHeightInPoints

    public float getHeightInPoints()

  get the row's height or ff (-1) for undefined/default-height in points (20*getHeight())

  Specified by:
    `getHeightInPoints` in interface `Row`
  Returns:
    rowheight or 0xff for undefined (use sheet default)
  See Also:
    `Sheet.getDefaultRowHeightInPoints()`

### getRowRecord

    protected RowRecord getRowRecord()

  get the lowlevel RowRecord represented by this object - should only be called by other parts of the high level API

  Returns:
    RowRecord this row represents

### isFormatted

    public boolean isFormatted()

  Is this row formatted? Most aren't, but some rows do have whole-row styles. For those that do, you can get the formatting from `getRowStyle()`

  Specified by:
    `isFormatted` in interface `Row`

### getRowStyle

    public HSSFCellStyle getRowStyle()

  Returns the whole-row cell styles. Most rows won't have one of these, so will return null. Call `isFormatted()` to check first.

  Specified by:
    `getRowStyle` in interface `Row`

### setRowStyle

    public void setRowStyle(HSSFCellStyle style)

  Applies a whole-row cell styling to the row.

### setRowStyle

    public void setRowStyle(CellStyle style)

  Applies a whole-row cell styling to the row.

  Specified by:
    `setRowStyle` in interface `Row`

### cellIterator

    public java.util.Iterator<Cell> cellIterator()

  Specified by:
    `cellIterator` in interface `Row`
  Returns:
    cell iterator of the physically defined cells. Note that the 4th element might well not be cell 4, as the iterator will not return un-defined (null) cells. Call getCellNum() on the returned cells to know which cell they are. As this only ever works on physically defined cells, the `Row.MissingCellPolicy` has no effect.

### iterator

    public java.util.Iterator iterator()

  Alias for `cellIterator()` to allow foreach loops

  Specified by:
    `iterator` in interface `java.lang.Iterable<Cell>`

### compareTo

    public int compareTo(java.lang.Object obj)

### equals

    public boolean equals(java.lang.Object obj)

  Overrides:
    `equals` in class `java.lang.Object`

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.