org.apache.poi.util
Class IntegerField

java.lang.Object
  extended by org.apache.poi.util.IntegerField
All Implemented Interfaces:
FixedField

public class IntegerField
extends java.lang.Object
implements FixedField

representation of an integer (32-bit) field at a fixed location within a byte array

Author:
Marc Johnson (mjohnson at apache dot org

Constructor Summary
IntegerField(int offset)
          construct the IntegerField with its offset into its containing byte array
IntegerField(int offset, byte[] data)
          Construct the IntegerField with its offset into its containing byte array and initialize its value from its byte array
IntegerField(int offset, int value)
          construct the IntegerField with its offset into its containing byte array and initialize its value
IntegerField(int offset, int value, byte[] data)
          construct the IntegerField with its offset into its containing byte array, initialize its value, and write the value to a byte array
 
Method Summary
 int get()
          get the IntegerField's current value
 void readFromBytes(byte[] data)
          set the value from its offset into an array of bytes
 void readFromStream(java.io.InputStream stream)
          set the value from an InputStream
 void set(int value)
          set the IntegerField's current value
 void set(int value, byte[] data)
          set the IntegerField's current value and write it to a byte array
 java.lang.String toString()
          return the value as a String
 void writeToBytes(byte[] data)
          write the value out to an array of bytes at the appropriate offset
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IntegerField

public IntegerField(int offset)
             throws java.lang.ArrayIndexOutOfBoundsException
construct the IntegerField with its offset into its containing byte array

Parameters:
offset - of the field within its byte array
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is negative

IntegerField

public IntegerField(int offset,
                    int value)
             throws java.lang.ArrayIndexOutOfBoundsException
construct the IntegerField with its offset into its containing byte array and initialize its value

Parameters:
offset - of the field within its byte array
value - the initial value
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is negative

IntegerField

public IntegerField(int offset,
                    byte[] data)
             throws java.lang.ArrayIndexOutOfBoundsException
Construct the IntegerField with its offset into its containing byte array and initialize its value from its byte array

Parameters:
offset - of the field within its byte array
data - the byte array to read the value from
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is not within the range of 0..(data.length - 1)

IntegerField

public IntegerField(int offset,
                    int value,
                    byte[] data)
             throws java.lang.ArrayIndexOutOfBoundsException
construct the IntegerField with its offset into its containing byte array, initialize its value, and write the value to a byte array

Parameters:
offset - of the field within its byte array
value - the initial value
data - the byte array to write the value to
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is negative or too large
Method Detail

get

public int get()
get the IntegerField's current value

Returns:
current value

set

public void set(int value)
set the IntegerField's current value

Parameters:
value - to be set

set

public void set(int value,
                byte[] data)
         throws java.lang.ArrayIndexOutOfBoundsException
set the IntegerField's current value and write it to a byte array

Parameters:
value - to be set
data - the byte array to write the value to
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is too large

readFromBytes

public void readFromBytes(byte[] data)
                   throws java.lang.ArrayIndexOutOfBoundsException
set the value from its offset into an array of bytes

Specified by:
readFromBytes in interface FixedField
Parameters:
data - the byte array from which the value is to be read
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is too large

readFromStream

public void readFromStream(java.io.InputStream stream)
                    throws java.io.IOException,
                           LittleEndian.BufferUnderrunException
set the value from an InputStream

Specified by:
readFromStream in interface FixedField
Parameters:
stream - the InputStream from which the value is to be read
Throws:
LittleEndian.BufferUnderrunException - if there is not enough data available from the InputStream
java.io.IOException - if an IOException is thrown from reading the InputStream

writeToBytes

public void writeToBytes(byte[] data)
                  throws java.lang.ArrayIndexOutOfBoundsException
write the value out to an array of bytes at the appropriate offset

Specified by:
writeToBytes in interface FixedField
Parameters:
data - the array of bytes to which the value is to be written
Throws:
java.lang.ArrayIndexOutOfBoundsException - if the offset is too large

toString

public java.lang.String toString()
return the value as a String

Specified by:
toString in interface FixedField
Overrides:
toString in class java.lang.Object
Returns:
the value as a String


Copyright 2008 The Apache Software Foundation or its licensors, as applicable.