Package loci.poi.hssf.record
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 short
sid
-
Constructor Summary
Constructors Constructor Description BoundSheetRecord()
BoundSheetRecord(RecordInputStream in)
Constructs a BoundSheetRecord and sets its fields appropriately
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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)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)short
getOptionFlags()
get the option flags (unimportant for HSSF supported sheets)int
getPositionOfBof()
get the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS filebyte
getRawSheetnameLength()
get the length of the raw sheetname in characters the length depends on the unicode flagint
getRecordSize()
gives the current serialized size of the record.String
getSheetname()
get the sheetname for this sheet.byte
getSheetnameLength()
get the length of the sheetname in charactersshort
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
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)void
setOptionFlags(short flags)
set the option flags (unimportant for HSSF supported sheets)void
setPositionOfBof(int pos)
set the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS filevoid
setSheetname(String sheetname)
Set the sheetname for this sheet.void
setSheetnameLength(byte len)
Set the length of the sheetname in charactersString
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 loci.poi.hssf.record.Record
clone, isInValueSection, isValue, serialize
-
-
-
-
Field Detail
-
sid
public static final short sid
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
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 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 classRecord
- 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 classRecord
- 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:
setSheetname(String)
-
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:
getSheetname()
-
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)
-
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.
-
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 classRecord
-
-