Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.poi.ss.util
Class SheetUtil

    java.lang.Object
      org.apache.poi.ss.util.SheetUtil

    public class SheetUtil

extends java.lang.Object

Helper methods for when working with Usermodel sheets

Author:
  Yegor Kozlov

Constructor Summary
`SheetUtil()`

Method Summary
`static boolean` | `canComputeColumnWidth(Font font)` Check if the Fonts are installed correctly so that Java can compute the size of columns.
`static boolean` | `containsCell(CellRangeAddress cr, int rowIx, int colIx)` Deprecated. 3.15 beta 2. Use `CellRangeAddressBase.isInRange(int, int)`.
`static Cell` | `getCell(Sheet sheet, int rowIx, int colIx)` Return the cell, without taking account of merged regions.
`static double` | `getCellWidth(Cell cell, int defaultCharWidth, DataFormatter formatter, boolean useMergedCells)` Compute width of a single cell
`static Cell` | `getCellWithMerges(Sheet sheet, int rowIx, int colIx)` Return the cell, taking account of merged regions.
`static double` | `getColumnWidth(Sheet sheet, int column, boolean useMergedCells)` Compute width of a column and return the result
`static double` | `getColumnWidth(Sheet sheet, int column, boolean useMergedCells, int firstRow, int lastRow)` Compute width of a column based on a subset of the rows and return the result
`static int` | `getDefaultCharWidth(Workbook wb)` Get default character width using the Workbook's default font

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

Constructor Detail

### SheetUtil

    public SheetUtil()

Method Detail

### getCellWidth

    public static double getCellWidth(Cell cell,
                                      int defaultCharWidth,
                                      DataFormatter formatter,
                                      boolean useMergedCells)

  Compute width of a single cell

  Parameters:
    `cell` - the cell whose width is to be calculated
    `defaultCharWidth` - the width of a single character
    `formatter` - formatter used to prepare the text to be measured
    `useMergedCells` - whether to use merged cells
  Returns:
    the width in pixels or -1 if cell is empty

### getColumnWidth

    public static double getColumnWidth(Sheet sheet,
                                        int column,
                                        boolean useMergedCells)

  Compute width of a column and return the result

  Parameters:
    `sheet` - the sheet to calculate
    `column` - 0-based index of the column
    `useMergedCells` - whether to use merged cells
  Returns:
    the width in pixels or -1 if all cells are empty

### getColumnWidth

    public static double getColumnWidth(Sheet sheet,
                                        int column,
                                        boolean useMergedCells,
                                        int firstRow,
                                        int lastRow)

  Compute width of a column based on a subset of the rows and return the result

  Parameters:
    `sheet` - the sheet to calculate
    `column` - 0-based index of the column
    `useMergedCells` - whether to use merged cells
    `firstRow` - 0-based index of the first row to consider (inclusive)
    `lastRow` - 0-based index of the last row to consider (inclusive)
  Returns:
    the width in pixels or -1 if cell is empty

### getDefaultCharWidth

    @Internal
    public static int getDefaultCharWidth(Workbook wb)

  Get default character width using the Workbook's default font

  Parameters:
    `wb` - the workbook to get the default character width from
  Returns:
    default character width in pixels

### canComputeColumnWidth

    public static boolean canComputeColumnWidth(Font font)

  Check if the Fonts are installed correctly so that Java can compute the size of columns. If a Cell uses a Font which is not available on the operating system then Java may fail to return useful Font metrics and thus lead to an auto-computed size of 0. This method allows to check if computing the sizes for a given Font will succeed or not.

  Parameters:
    `font` - The Font that is used in the Cell
  Returns:
    true if computing the size for this Font will succeed, false otherwise

### containsCell

    @Deprecated
    public static boolean containsCell(CellRangeAddress cr,
                                                  int rowIx,
                                                  int colIx)

  Deprecated. 3.15 beta 2. Use `CellRangeAddressBase.isInRange(int, int)`.

  Check if the cell is in the specified cell range

  Parameters:
    `cr` - the cell range to check in
    `rowIx` - the row to check
    `colIx` - the column to check
  Returns:
    true if the range contains the cell [rowIx, colIx]

### getCell

    public static Cell getCell(Sheet sheet,
                               int rowIx,
                               int colIx)

  Return the cell, without taking account of merged regions.

  Use `getCellWithMerges(Sheet, int, int)` if you want the top left cell from merged regions instead when the reference is a merged cell.

  Use this where you want to know if the given cell is explicitly defined or not.

  Parameters:
    `sheet` - The workbook sheet to look at.
    `rowIx` - The 0-based index of the row.
    `colIx` - The 0-based index of the cell.
  Returns:
    cell at the given location, or null if not defined
  Throws:
    `java.lang.NullPointerException` - if sheet is null

### getCellWithMerges

    public static Cell getCellWithMerges(Sheet sheet,
                                         int rowIx,
                                         int colIx)

  Return the cell, taking account of merged regions. Allows you to find the cell who's contents are shown in a given position in the sheet.

  If the cell at the given co-ordinates is a merged cell, this will return the primary (top-left) most cell of the merged region.

  If the cell at the given co-ordinates is not in a merged region, then will return the cell itself.

  If there is no cell defined at the given co-ordinates, will return null.

  Parameters:
    `sheet` - The workbook sheet to look at.
    `rowIx` - The 0-based index of the row.
    `colIx` - The 0-based index of the cell.
  Returns:
    cell at the given location, its base merged cell, or null if not defined
  Throws:
    `java.lang.NullPointerException` - if sheet is null

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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