org.apache.poi.ss.usermodel
Interface Row

All Superinterfaces:
java.lang.Iterable<Cell>
All Known Implementing Classes:
HSSFRow

public interface Row
extends java.lang.Iterable<Cell>

High level representation of a row of a spreadsheet.


Nested Class Summary
static class Row.MissingCellPolicy
          Used to specify the different possible policies if for the case of null and blank cells
 
Method Summary
 java.util.Iterator<Cell> cellIterator()
           
 Cell createCell(int column)
          Use this to create new cells within the row and return it.
 Cell createCell(int column, CellType type)
          Use this to create new cells within the row and return it.
 Cell createCell(int column, int type)
          Deprecated. POI 3.15 beta 3. Use createCell(int, CellType) instead.
 Cell getCell(int cellnum)
          Get the cell representing a given column (logical cell) 0-based.
 Cell getCell(int cellnum, Row.MissingCellPolicy policy)
          Returns the cell at the given (0 based) index, with the specified Row.MissingCellPolicy
 short getFirstCellNum()
          Get the number of the first cell contained in this row.
 short getHeight()
          Get the row's height measured in twips (1/20th of a point).
 float getHeightInPoints()
          Returns row height measured in point size.
 short getLastCellNum()
          Gets the index of the last cell contained in this row PLUS ONE.
 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
 CellStyle getRowStyle()
          Returns the whole-row cell styles.
 Sheet getSheet()
          Returns the Sheet 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.
 void removeCell(Cell cell)
          Remove the Cell 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 rowNum)
          Set the row number of this row.
 void setRowStyle(CellStyle 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 interface java.lang.Iterable
iterator
 

Method Detail

createCell

Cell createCell(int column)
Use this to create new cells within the row and return it.

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

Parameters:
column - - the column number this cell represents
Returns:
Cell a high level representation of the created cell.
Throws:
java.lang.IllegalArgumentException - if columnIndex < 0 or greater than the maximum number of supported columns (255 for *.xls, 1048576 for *.xlsx)

createCell

Cell createCell(int column,
                int type)
Deprecated. POI 3.15 beta 3. Use createCell(int, CellType) instead.

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

The cell that is returned will be of the requested type. The type can be changed either through calling setCellValue or setCellType, but there is a small overhead to doing this, so it is best to create of the required type up front.

Parameters:
column - - the column number this cell represents
type - - the cell's data type
Returns:
Cell a high level representation of the created cell.
Throws:
java.lang.IllegalArgumentException - if columnIndex < 0 or greater than a maximum number of supported columns (255 for *.xls, 1048576 for *.xlsx)
See Also:
CellType.BLANK, CellType.BOOLEAN, CellType.ERROR, CellType.FORMULA, CellType.NUMERIC, CellType.STRING

createCell

Cell createCell(int column,
                CellType type)
Use this to create new cells within the row and return it.

The cell that is returned will be of the requested type. The type can be changed either through calling setCellValue or setCellType, but there is a small overhead to doing this, so it is best to create of the required type up front.

Parameters:
column - - the column number this cell represents
type - - the cell's data type
Returns:
Cell a high level representation of the created cell.
Throws:
java.lang.IllegalArgumentException - if columnIndex < 0 or greater than a maximum number of supported columns (255 for *.xls, 1048576 for *.xlsx)

removeCell

void removeCell(Cell cell)
Remove the Cell from this row.

Parameters:
cell - the cell to remove

setRowNum

void setRowNum(int rowNum)
Set the row number of this row.

Parameters:
rowNum - the row number (0-based)
Throws:
java.lang.IllegalArgumentException - if rowNum < 0

getRowNum

int getRowNum()
Get row number this row represents

Returns:
the row number (0 based)

getCell

Cell getCell(int cellnum)
Get the cell representing a given column (logical cell) 0-based. If you ask for a cell that is not defined....you get a null.

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

getCell

Cell getCell(int cellnum,
             Row.MissingCellPolicy policy)
Returns the cell at the given (0 based) index, with the specified Row.MissingCellPolicy

Returns:
the cell at the given (0 based) index
Throws:
java.lang.IllegalArgumentException - if cellnum < 0 or the specified MissingCellPolicy is invalid

getFirstCellNum

short getFirstCellNum()
Get the number of the first cell contained in this row.

Returns:
short representing the first logical cell in the row, or -1 if the row does not contain any cells.

getLastCellNum

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++) {
   Cell cell = row.getCell(colIx);
   if(cell == null) {
     continue;
   }
   //... do something with cell
 }
 

Returns:
short representing the last logical cell in the row PLUS ONE, or -1 if the row does not contain any cells.

getPhysicalNumberOfCells

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.

Returns:
int representing the number of defined cells in the row.

setHeight

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.

Parameters:
height - rowheight or 0xff for undefined (use sheet default)

setZeroHeight

void setZeroHeight(boolean zHeight)
Set whether or not to display this row with 0 height

Parameters:
zHeight - height is zero or not.

getZeroHeight

boolean getZeroHeight()
Get whether or not to display this row with 0 height

Returns:
- zHeight height is zero or not.

setHeightInPoints

void setHeightInPoints(float height)
Set the row's height in points.

Parameters:
height - the height in points. -1 resets to the default height

getHeight

short getHeight()
Get the row's height measured in twips (1/20th of a point). If the height is not set, the default worksheet value is returned, See Sheet.getDefaultRowHeightInPoints()

Returns:
row height measured in twips (1/20th of a point)

getHeightInPoints

float getHeightInPoints()
Returns row height measured in point size. If the height is not set, the default worksheet value is returned, See Sheet.getDefaultRowHeightInPoints()

Returns:
row height measured in point size
See Also:
Sheet.getDefaultRowHeightInPoints()

isFormatted

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()


getRowStyle

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


setRowStyle

void setRowStyle(CellStyle style)
Applies a whole-row cell styling to the row.


cellIterator

java.util.Iterator<Cell> cellIterator()
Returns:
Cell iterator of the physically defined cells. Note element 4 may actually be row cell depending on how many are defined!

getSheet

Sheet getSheet()
Returns the Sheet this row belongs to

Returns:
the Sheet that owns this row

getOutlineLevel

int getOutlineLevel()
Returns the rows outline level. Increased as you put it into more groups (outlines), reduced as you take it out of them.