| Modifier and Type | Field and Description |
|---|---|
| private int | _bat_count
Number of big block allocation table blocks (int). |
| private final byte[] | _data
The data. |
| private static final byte | |
| private int | _property_start
Start of the property set block (int index of the property set chain's first big block). |
| private int | _sbat_count
Number of small block allocation table blocks (int) (Number of MiniFAT Sectors in Microsoft parlance) |
| private int | _sbat_start
start of the small block allocation table (int index of small block allocation table's first big block) |
| private int | _xbat_count
Number of big block allocation table blocks (int) (Number of DIFAT Sectors in Microsoft parlance) |
| private int | _xbat_start
Big block index for extension to the big block allocation table |
| private final POIFSBigBlockSize | bigBlockSize
What big block size the file uses. |
| Access | Constructor and Description |
|---|---|
| public | HeaderBlock(InputStream
the source InputStream stream)create a new HeaderBlockReader from an InputStream |
| public | |
| private | |
| public |
| Modifier and Type | Method and Description |
|---|---|
| private static IOException | |
| public int[] | |
| public int | |
| public POIFSBigBlockSize | |
| public int | Returns: the index of the first block of the Property Tableget start of Property Table |
| public int | |
| public int | |
| public int | |
| public int | |
| private static byte[] | |
| public void | |
| public void | |
| public void | setPropertyStart(final int
the index of the first block of the Property Table startBlock)Set start of Property Table |
| public void | |
| public void | setSBATStart(final int
the index of the first big block of the small
block allocation table startBlock)Set start of small block allocation table |
| public void | |
| public void | |
| public void | writeData(final OutputStream
the OutputStream to which the stored data should
be written stream)Write the block's data to an OutputStream |
| _bat_count | back to summary |
|---|---|
| private int _bat_count Number of big block allocation table blocks (int). (Number of FAT Sectors in Microsoft parlance). | |
| _data | back to summary |
|---|---|
| private final byte[] _data The data. Only ever 512 bytes, because 4096 byte files use zeros for the extra header space. | |
| _default_value | back to summary |
|---|---|
| private static final byte _default_value | |
| _property_start | back to summary |
|---|---|
| private int _property_start Start of the property set block (int index of the property set chain's first big block). | |
| _sbat_count | back to summary |
|---|---|
| private int _sbat_count Number of small block allocation table blocks (int) (Number of MiniFAT Sectors in Microsoft parlance) | |
| _sbat_start | back to summary |
|---|---|
| private int _sbat_start start of the small block allocation table (int index of small block allocation table's first big block) | |
| _xbat_count | back to summary |
|---|---|
| private int _xbat_count Number of big block allocation table blocks (int) (Number of DIFAT Sectors in Microsoft parlance) | |
| _xbat_start | back to summary |
|---|---|
| private int _xbat_start Big block index for extension to the big block allocation table | |
| bigBlockSize | back to summary |
|---|---|
| private final POIFSBigBlockSize bigBlockSize What big block size the file uses. Most files use 512 bytes, but a few use 4096 | |
| HeaderBlock | back to summary |
|---|---|
| public HeaderBlock(InputStream stream) throws IOException create a new HeaderBlockReader from an InputStream
| |
| HeaderBlock | back to summary |
|---|---|
| public HeaderBlock(ByteBuffer buffer) throws IOException | |
| HeaderBlock | back to summary |
|---|---|
| private HeaderBlock(byte[] data) throws IOException | |
| HeaderBlock | back to summary |
|---|---|
| public HeaderBlock(POIFSBigBlockSize bigBlockSize) Create a single instance initialized with default values | |
| alertShortRead | back to summary |
|---|---|
| private static IOException alertShortRead(int pRead) | |
| getBATArray | back to summary |
|---|---|
| public int[] getBATArray() Returns the offsets to the first (up to) 109 BAT sectors. Any additional BAT sectors are held in the XBAT (DIFAT) sectors in a chain.
| |
| getBATCount | back to summary |
|---|---|
public int getBATCount()
| |
| getBigBlockSize | back to summary |
|---|---|
public POIFSBigBlockSize getBigBlockSize()
| |
| getPropertyStart | back to summary |
|---|---|
| public int getPropertyStart() get start of Property Table
| |
| getSBATCount | back to summary |
|---|---|
| public int getSBATCount() | |
| getSBATStart | back to summary |
|---|---|
public int getSBATStart()
| |
| getXBATCount | back to summary |
|---|---|
public int getXBATCount()
| |
| getXBATIndex | back to summary |
|---|---|
public int getXBATIndex()
| |
| readFirst512 | back to summary |
|---|---|
| private static byte[] readFirst512(InputStream stream) throws IOException | |
| setBATArray | back to summary |
|---|---|
| public void setBATArray(int[] bat_array) Sets the offsets of the first (up to) 109 BAT sectors. | |
| setBATCount | back to summary |
|---|---|
| public void setBATCount(final int count) Sets the number of BAT blocks that are used. This is the number used in both the BAT and XBAT. | |
| setPropertyStart | back to summary |
|---|---|
| public void setPropertyStart(final int startBlock) Set start of Property Table
| |
| setSBATBlockCount | back to summary |
|---|---|
| public void setSBATBlockCount(final int count) Set count of SBAT blocks
| |
| setSBATStart | back to summary |
|---|---|
| public void setSBATStart(final int startBlock) Set start of small block allocation table
| |
| setXBATCount | back to summary |
|---|---|
| public void setXBATCount(final int count) Sets the number of XBAT (DIFAT) blocks used | |
| setXBATStart | back to summary |
|---|---|
| public void setXBATStart(final int startBlock) Sets the first XBAT (DIFAT) block location | |
| writeData | back to summary |
|---|---|
| public void writeData(final OutputStream stream) throws IOException Write the block's data to an OutputStream
| |