org.apache.poi.hssf.record
Class UnicodeString

java.lang.Object
  |
  +--org.apache.poi.hssf.record.Record
        |
        +--org.apache.poi.hssf.record.UnicodeString
All Implemented Interfaces:
java.lang.Comparable

public class UnicodeString
extends Record
implements java.lang.Comparable

Title: Unicode String

Description: Unicode String record. We implement these as a record, although they are really just standard fields that are in several records. It is considered more desirable then repeating it in all of them.

REFERENCE: PG 264 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)

Version:
2.0-pre
Author:
Andrew C. Oliver, Marc Johnson (mjohnson at apache dot org)

Field Summary
static short sid
           
 
Constructor Summary
UnicodeString()
           
UnicodeString(short id, short size, byte[] data)
          construct a unicode string record and fill its fields, ID is ignored
UnicodeString(short id, short size, byte[] data, java.lang.String prefix)
          construct a unicode string from a string fragment + data
 
Method Summary
 int compareTo(java.lang.Object obj)
           
 boolean equals(java.lang.Object o)
           
protected  void fillFields(byte[] data, short size)
          called by the constructor, should set class level fields.
protected  void fillFields(byte[] data, short size, int offset)
          called by the constructor, should set class level fields.
 short getCharCount()
          get the number of characters in the string
 java.lang.String getDebugInfo()
          return a character representation of the fields of this record
 byte getOptionFlags()
          get the option flags which among other things return if this is a 16-bit or 8 bit string
 int getRecordSize()
          gives the current serialized size of the record.
 short getSid()
          return the non static version of the id for this record.
 java.lang.String getString()
          get the actual string this contains as a java String object
 int hashCode()
           
 int serialize(int offset, byte[] data)
          called by the class that is responsible for writing this sucker.
 void setCharCount()
          sets the number of characters to whaterver number of characters is in the string currently.
 void setCharCount(short cc)
          set the number of characters in the string
 void setOptionFlags(byte of)
          set the option flags which among other things return if this is a 16-bit or 8 bit string
 void setString(java.lang.String string)
          set the actual string this contains
 java.lang.String toString()
          unlike the real records we return the same as "getString()" rather than debug info
protected  void validateSid(short id)
          NO OP
 
Methods inherited from class org.apache.poi.hssf.record.Record
isInValueSection, isValue, processContinueRecord, serialize
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

sid

public static final short sid
Constructor Detail

UnicodeString

public UnicodeString()

UnicodeString

public UnicodeString(short id,
                     short size,
                     byte[] data)
construct a unicode string record and fill its fields, ID is ignored
Parameters:
id - - ignored
size - - size of the data
data - - the bytes of the string/fields

UnicodeString

public UnicodeString(short id,
                     short size,
                     byte[] data,
                     java.lang.String prefix)
construct a unicode string from a string fragment + data
Method Detail

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

validateSid

protected void validateSid(short id)
NO OP
Overrides:
validateSid in class Record
Following copied from class: org.apache.poi.hssf.record.Record
Parameters:
id - alleged id for this record

fillFields

protected void fillFields(byte[] data,
                          short size)
Description copied from class: Record
called by the constructor, should set class level fields. Should throw runtime exception for bad/icomplete data.
Overrides:
fillFields in class Record
Following copied from class: org.apache.poi.hssf.record.Record
Parameters:
data - raw data

getCharCount

public short getCharCount()
get the number of characters in the string
Returns:
number of characters

setCharCount

public void setCharCount(short cc)
set the number of characters in the string
Parameters:
cc - - number of characters

setCharCount

public void setCharCount()
sets the number of characters to whaterver number of characters is in the string currently. effectively setCharCount(getString.length()).
See Also:
setString(String), getString()

getOptionFlags

public byte getOptionFlags()
get the option flags which among other things return if this is a 16-bit or 8 bit string
Returns:
optionflags bitmask

setOptionFlags

public void setOptionFlags(byte of)
set the option flags which among other things return if this is a 16-bit or 8 bit string
Parameters:
of - optionflags bitmask

getString

public java.lang.String getString()
get the actual string this contains as a java String object
Returns:
String

setString

public void setString(java.lang.String string)
set the actual string this contains
Parameters:
string - the text

toString

public java.lang.String toString()
unlike the real records we return the same as "getString()" rather than debug info
Overrides:
toString in class Record
Returns:
String value of the record
See Also:
getDebugInfo()

getDebugInfo

public java.lang.String getDebugInfo()
return a character representation of the fields of this record
Returns:
String of output for biffviewer etc.

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.
Overrides:
serialize in class Record
Following copied from class: org.apache.poi.hssf.record.Record
Parameters:
offset - to begin writing at
data - byte array containing instance data
Returns:
number of bytes written

getRecordSize

public int getRecordSize()
Description copied from class: Record
gives the current serialized size of the record.
Overrides:
getRecordSize in class Record

getSid

public short getSid()
Description copied from class: Record
return the non static version of the id for this record.
Overrides:
getSid in class Record

fillFields

protected void fillFields(byte[] data,
                          short size,
                          int offset)
called by the constructor, should set class level fields. Should throw runtime exception for bad/icomplete data.
Overrides:
fillFields in class Record
Parameters:
data - raw data
size - size of data
offset - of the records data (provided a big array of the file)

compareTo

public int compareTo(java.lang.Object obj)
Specified by:
compareTo in interface java.lang.Comparable


Copyright © 2001-2002 JAKARTA POI project. All Rights Reserved.