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

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

public class CodepageRecord
extends Record

Title: Codepage Record

Description: the default characterset. for the workbook

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

Version:
  2.0-pre
Author:
  Andrew C. Oliver (acoliver at apache dot org)

Field Summary
`static short` `CODEPAGE` the likely correct value for CODEPAGE (at least for US versions).
`static short` `sid`

Constructor Summary
`CodepageRecord()`
`CodepageRecord(short id, short size, byte[] data)` Constructs a CodepageRecord and sets its fields appropriately
`CodepageRecord(short id, short size, byte[] data, int offset)` Constructs a CodepageRecord 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.
`short` `getCodepage()` get the codepage for this workbook
`int` `getRecordSize()` gives the current serialized size of the record.
`short` `getSid()` return the non static version of the id for this record.
`int` `serialize(int offset, byte[] data)` called by the class that is responsible for writing this sucker.
`void` `setCodepage(short cp)` set the codepage for this workbook
`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

### CODEPAGE

    public static final short CODEPAGE

  the likely correct value for CODEPAGE (at least for US versions). We could use some help with international versions (which we do not have access to documentation for)

  See Also:
    Constant Field Values

Constructor Detail

### CodepageRecord

    public CodepageRecord()

### CodepageRecord

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

  Constructs a CodepageRecord and sets its fields appropriately

Parameters:
  `id` - id must be 0x42 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)

### CodepageRecord

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

  Constructs a CodepageRecord and sets its fields appropriately

Parameters:
  `id` - id must be 0x42 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)

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)

### setCodepage

    public void setCodepage(short cp)

  set the codepage for this workbook

  See Also:
    `CODEPAGE`

### getCodepage

    public short getCodepage()

  get the codepage for this workbook

  Returns:
    codepage - the codepage to set
  See Also:
    `CODEPAGE`

### 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.