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 shortsid
-
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 voidfillFields(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)bytegetCompressedUnicodeFlag()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)shortgetOptionFlags()get the option flags (unimportant for HSSF supported sheets)intgetPositionOfBof()get the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS filebytegetRawSheetnameLength()get the length of the raw sheetname in characters the length depends on the unicode flagintgetRecordSize()gives the current serialized size of the record.java.lang.StringgetSheetname()get the sheetname for this sheet.bytegetSheetnameLength()get the length of the sheetname in charactersshortgetSid()return the non static version of the id for this record.intserialize(int offset, byte[] data)called by the class that is responsible for writing this sucker.voidsetCompressedUnicodeFlag(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)voidsetOptionFlags(short flags)set the option flags (unimportant for HSSF supported sheets)voidsetPositionOfBof(int pos)set the offset in bytes of the Beginning of File Marker within the HSSF Stream part of the POIFS filevoidsetSheetname(java.lang.String sheetname)Set the sheetname for this sheet.voidsetSheetnameLength(byte len)Set the length of the sheetname in charactersjava.lang.StringtoString()get a string representation of the record (for biffview/debugging)protected voidvalidateSid(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:Recordcalled by constructor, should throw runtime exception in the event of a record passed with a differing ID.- Specified by:
validateSidin 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:
fillFieldsin 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(java.lang.String sheetname)
Set the sheetname for this sheet. (this appears in the tabs at the bottom)- Parameters:
sheetname- the name of the sheet- Throws:
java.lang.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 java.lang.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 java.lang.String toString()
Description copied from class:Recordget a string representation of the record (for biffview/debugging)
-
serialize
public int serialize(int offset, byte[] data)Description copied from class:Recordcalled 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:Recordgives the current serialized size of the record. Should include the sid and reclength (4 bytes).- Overrides:
getRecordSizein classRecord
-
-