Package org.apache.poi.util
Class ByteField
- java.lang.Object
-
- org.apache.poi.util.ByteField
-
- All Implemented Interfaces:
FixedField
public class ByteField extends Object implements FixedField
representation of a byte (8-bit) field at a fixed location within a byte array
-
-
Constructor Summary
Constructors Constructor Description ByteField(int offset)
construct the ByteField with its offset into its containing byte array and a default value of 0ByteField(int offset, byte value)
construct the ByteField with its offset into its containing byte array and initialize its valueByteField(int offset, byte[] data)
Construct the ByteField with its offset into its containing byte array and initialize its value from its byte arrayByteField(int offset, byte value, byte[] data)
construct the ByteField with its offset into its containing byte array, initialize its value, and write its value to its byte array
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte
get()
get the ByteField's current valuevoid
readFromBytes(byte[] data)
set the value from its offset into an array of bytesvoid
readFromStream(InputStream stream)
set the value from an InputStreamvoid
set(byte value)
set the ByteField's current valuevoid
set(byte value, byte[] data)
set the ByteField's current value and write it to a byte arrayString
toString()
return the value as a Stringvoid
writeToBytes(byte[] data)
write the value out to an array of bytes at the appropriate offset
-
-
-
Constructor Detail
-
ByteField
public ByteField(int offset) throws ArrayIndexOutOfBoundsException
construct the ByteField with its offset into its containing byte array and a default value of 0- Parameters:
offset
- of the field within its byte array- Throws:
ArrayIndexOutOfBoundsException
- if offset is negative
-
ByteField
public ByteField(int offset, byte value) throws ArrayIndexOutOfBoundsException
construct the ByteField with its offset into its containing byte array and initialize its value- Parameters:
offset
- of the field within its byte arrayvalue
- the initial value- Throws:
ArrayIndexOutOfBoundsException
- if offset is negative
-
ByteField
public ByteField(int offset, byte[] data) throws ArrayIndexOutOfBoundsException
Construct the ByteField with its offset into its containing byte array and initialize its value from its byte array- Parameters:
offset
- of the field within its byte arraydata
- the byte array to read the value from- Throws:
ArrayIndexOutOfBoundsException
- if the offset is not within the range of 0..(data.length - 1)
-
ByteField
public ByteField(int offset, byte value, byte[] data) throws ArrayIndexOutOfBoundsException
construct the ByteField with its offset into its containing byte array, initialize its value, and write its value to its byte array- Parameters:
offset
- of the field within its byte arrayvalue
- the initial valuedata
- the byte array to write the value to- Throws:
ArrayIndexOutOfBoundsException
- if the offset is not within the range of 0..(data.length - 1)
-
-
Method Detail
-
get
public byte get()
get the ByteField's current value- Returns:
- current value
-
set
public void set(byte value)
set the ByteField's current value- Parameters:
value
- to be set
-
set
public void set(byte value, byte[] data) throws ArrayIndexOutOfBoundsException
set the ByteField's current value and write it to a byte array- Parameters:
value
- to be setdata
- the byte array to write the value to- Throws:
ArrayIndexOutOfBoundsException
- if the offset is out of the byte array's range
-
readFromBytes
public void readFromBytes(byte[] data) throws ArrayIndexOutOfBoundsException
set the value from its offset into an array of bytes- Specified by:
readFromBytes
in interfaceFixedField
- Parameters:
data
- the byte array from which the value is to be read- Throws:
ArrayIndexOutOfBoundsException
- if the offset is out of range of the bte array
-
readFromStream
public void readFromStream(InputStream stream) throws IOException
set the value from an InputStream- Specified by:
readFromStream
in interfaceFixedField
- Parameters:
stream
- the InputStream from which the value is to be read- Throws:
LittleEndian.BufferUnderrunException
- if there is not enough data available from the InputStreamIOException
- if an IOException is thrown from reading the InputStream
-
writeToBytes
public void writeToBytes(byte[] data) throws ArrayIndexOutOfBoundsException
write the value out to an array of bytes at the appropriate offset- Specified by:
writeToBytes
in interfaceFixedField
- Parameters:
data
- the array of bytes to which the value is to be written- Throws:
ArrayIndexOutOfBoundsException
- if the offset is out of the byte array's range
-
toString
public String toString()
return the value as a String- Specified by:
toString
in interfaceFixedField
- Overrides:
toString
in classObject
- Returns:
- the value as a String
-
-