## org.apache.poi.hssf.record
Class FormatRecord

    java.lang.Object
      org.apache.poi.hssf.record.Record
          org.apache.poi.hssf.record.FormatRecord

public class FormatRecord
extends Record

Title: Format Record

Description: describes a number format -- those goofy strings like $(#,###)

REFERENCE: PG 317 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

Version:
  2.0-pre
Author:
  Andrew C. Oliver (acoliver at apache dot org), Shawn M. Laubach (slaubach at apache dot org)

Field Summary
`static short` `sid`

Constructor Summary
`FormatRecord()`
`FormatRecord(short id, short size, byte[] data)` Constructs a Format record and sets its fields appropriately.
`FormatRecord(short id, short size, byte[] data, int offset)` Constructs a Format record and sets its fields appropriately.

Method Summary
`protected void` `fillFields(byte[] data, short size, int offset)` called by the constructor, should set class level fields.
`java.lang.String` `getFormatString()` get the format string
`short` `getFormatStringLength()` get the format string length
`short` `getIndexCode()` get the format index code (for built in formats)
`int` `getRecordSize()` gives the current serialized size of the record.
`short` `getSid()` return the non static version of the id for this record.
`boolean` `getUnicodeFlag()` get whether the string is unicode
`int` `serialize(int offset, byte[] data)` called by the class that is responsible for writing this sucker.
`void` `setFormatString(java.lang.String fs)` set the format string
`void` `setFormatStringLength(byte len)` set the format string length
`void` `setIndexCode(short index)` set the format index code (for built in formats)
`void` `setUnicodeFlag(boolean unicode)` set whether the string is unicode
`java.lang.String` `toString()` get a string representation of the record (for biffview/debugging)
`protected void` `validateSid(short id)` called by constructor, should throw runtime exception in the event of a record passed with a differing ID.

Methods inherited from class org.apache.poi.hssf.record.Record
`clone, fillFields, isInValueSection, isValue, processContinueRecord, serialize`

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

Field Detail

### sid

    public static final short sid

See Also:
  Constant Field Values

Constructor Detail

### FormatRecord

    public FormatRecord()

### FormatRecord

    public FormatRecord(short id,
                        short size,
                        byte[] data)

  Constructs a Format record and sets its fields appropriately.

Parameters:
  `id` - id must be 0x41e or an exception will be throw upon validation
  `size` - the size of the data area of the record
  `data` - data of the record (should not contain sid/len)

### FormatRecord

    public FormatRecord(short id,
                        short size,
                        byte[] data,
                        int offset)

  Constructs a Format record and sets its fields appropriately.

Parameters:
  `id` - id must be 0x41e or an exception will be throw upon validation
  `size` - the size of the data area of the record
  `data` - data of the record (should not contain sid/len)
  `offset` - of the record's data

Method Detail

### validateSid

    protected void validateSid(short id)

  Description copied from class: `Record`
  called by constructor, should throw runtime exception in the event of a record passed with a differing ID.

  Specified by:
    `validateSid` in class `Record`
  Parameters:
    `id` - alleged id for this record

### fillFields

    protected void fillFields(byte[] data,
                              short size,
                              int offset)

  Description copied from class: `Record`
  called by the constructor, should set class level fields. Should throw runtime exception for bad/icomplete data.

  Specified by:
    `fillFields` in class `Record`
  Parameters:
    `data` - raw data
    `size` - size of data
    `offset` - of the record's data (provided a big array of the file)

### setIndexCode

    public void setIndexCode(short index)

  set the format index code (for built in formats)

  Parameters:
    `index` - the format index code
  See Also:
    `Workbook`

### setFormatStringLength

    public void setFormatStringLength(byte len)

  set the format string length

  Parameters:
    `len` - the length of the format string
  See Also:
    `setFormatString(String)`

### setUnicodeFlag

    public void setUnicodeFlag(boolean unicode)

  set whether the string is unicode

  Parameters:
    `unicode` - flag for whether string is unicode

### setFormatString

    public void setFormatString(java.lang.String fs)

  set the format string

  Parameters:
    `fs` - the format string
  See Also:
    `setFormatStringLength(byte)`

### getIndexCode

    public short getIndexCode()

  get the format index code (for built in formats)

  Returns:
    the format index code
  See Also:
    `Workbook`

### getFormatStringLength

    public short getFormatStringLength()

  get the format string length

  Returns:
    the length of the format string
  See Also:
    `getFormatString()`

### getUnicodeFlag

    public boolean getUnicodeFlag()

  get whether the string is unicode

  Returns:
    flag for whether string is unicode

### getFormatString

    public java.lang.String getFormatString()

  get the format string

  Returns:
    the format string
  See Also:
    `getFormatStringLength()`

### toString

    public java.lang.String toString()

  Description copied from class: `Record`
  get a string representation of the record (for biffview/debugging)

  Overrides:
    `toString` in class `Record`

### serialize

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

  Description copied from class: `Record`
  called by the class that is responsible for writing this sucker. Subclasses should implement this so that their data is passed back in a byte array.

  Specified by:
    `serialize` in class `Record`
  Parameters:
    `offset` - to begin writing at
    `data` - byte array containing instance data
  Returns:
    number of bytes written

### getRecordSize

    public int getRecordSize()

  Description copied from class: `Record`
  gives the current serialized size of the record. Should include the sid and reclength (4 bytes).

  Overrides:
    `getRecordSize` in class `Record`

### getSid

    public short getSid()

  Description copied from class: `Record`
  return the non static version of the id for this record.

  Specified by:
    `getSid` in class `Record`

Copyright © 2003 Apache Software Foundation.