Class BoundSheetRecord

java.lang.Object
loci.poi.hssf.record.Record
loci.poi.hssf.record.BoundSheetRecord

public class BoundSheetRecord extends Record
Title: Bound Sheet Record (aka BundleSheet)

Description: Defines a sheet within a workbook. Basically stores the sheetname and tells where the Beginning of file record is within the HSSF file.

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

Version:
2.0-pre
Author:
Andrew C. Oliver (acoliver at apache dot org), Sergei Kozello (sergeikozello at mail.ru)
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final short
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
    Constructs a BoundSheetRecord and sets its fields appropriately
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    UTF8: sid + len + bof + flags + len(str) + unicode + str 2 + 2 + 4 + 2 + 1 + 1 + len(str) UNICODE: sid + len + bof + flags + len(str) + unicode + str 2 + 2 + 4 + 2 + 1 + 1 + 2 * len(str)
    byte
    get whether or not to interperate the Sheetname as compressed unicode (8/16 bit) (This is undocumented but can be found as Q187919 on the Microsoft(tm) Support site)
    short
    get the option flags (unimportant for HSSF supported sheets)
    int
    get the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS file
    byte
    get the length of the raw sheetname in characters the length depends on the unicode flag
    int
    gives the current serialized size of the record.
    get the sheetname for this sheet.
    byte
    get the length of the sheetname in characters
    short
    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
    set whether or not to interperate the Sheetname as compressed unicode (8/16 bit) (This is undocumented but can be found as Q187919 on the Microsoft(tm) Support site)
    void
    setOptionFlags(short flags)
    set the option flags (unimportant for HSSF supported sheets)
    void
    set the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS file
    void
    setSheetname(String sheetname)
    Set the sheetname for this sheet.
    void
    Set the length of the sheetname in characters
    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 loci.poi.hssf.record.Record

    clone, isInValueSection, isValue, serialize

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

  • Constructor Details

    • BoundSheetRecord

      public BoundSheetRecord()
    • BoundSheetRecord

      public BoundSheetRecord(RecordInputStream in)
      Constructs a BoundSheetRecord and sets its fields appropriately
      Parameters:
      in - the RecordInputstream to read the record from
  • Method Details

    • 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(RecordInputStream in)
      UTF8: sid + len + bof + flags + len(str) + unicode + str 2 + 2 + 4 + 2 + 1 + 1 + len(str) UNICODE: sid + len + bof + flags + len(str) + unicode + str 2 + 2 + 4 + 2 + 1 + 1 + 2 * len(str)
      Specified by:
      fillFields in class Record
      Parameters:
      in - the RecordInputstream to read the record from
    • setPositionOfBof

      public void setPositionOfBof(int pos)
      set the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS file
      Parameters:
      pos - offset in bytes
    • setOptionFlags

      public void setOptionFlags(short flags)
      set the option flags (unimportant for HSSF supported sheets)
      Parameters:
      flags - to set
    • setSheetnameLength

      public void setSheetnameLength(byte len)
      Set the length of the sheetname in characters
      Parameters:
      len - number of characters in the sheet name
      See Also:
    • setCompressedUnicodeFlag

      public void setCompressedUnicodeFlag(byte flag)
      set whether or not to interperate the Sheetname as compressed unicode (8/16 bit) (This is undocumented but can be found as Q187919 on the Microsoft(tm) Support site)
      Parameters:
      flag - (0/1) 0- compressed, 1 - uncompressed (16-bit)
    • setSheetname

      public void setSheetname(String sheetname)
      Set the sheetname for this sheet. (this appears in the tabs at the bottom)
      Parameters:
      sheetname - the name of the sheet
      Throws:
      IllegalArgumentException - if sheet name will cause excel to crash.
    • getPositionOfBof

      public int getPositionOfBof()
      get the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS file
      Returns:
      offset in bytes
    • getOptionFlags

      public short getOptionFlags()
      get the option flags (unimportant for HSSF supported sheets)
      Returns:
      flags to set
    • getSheetnameLength

      public byte getSheetnameLength()
      get the length of the sheetname in characters
      Returns:
      number of characters in the sheet name
      See Also:
    • getRawSheetnameLength

      public byte getRawSheetnameLength()
      get the length of the raw sheetname in characters the length depends on the unicode flag
      Returns:
      number of characters in the raw sheet name
    • getCompressedUnicodeFlag

      public byte getCompressedUnicodeFlag()
      get whether or not to interperate the Sheetname as compressed unicode (8/16 bit) (This is undocumented but can be found as Q187919 on the Microsoft(tm) Support site)
      Returns:
      flag (0/1) 0- compressed, 1 - uncompressed (16-bit)
    • getSheetname

      public String getSheetname()
      get the sheetname for this sheet. (this appears in the tabs at the bottom)
      Returns:
      sheetname the name of the sheet
    • toString

      public 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