public class StringUtil
extends java.lang.Object
ContinueRecord
s. For such
functionality, consider using RecordInputStream
*Modifier and Type | Class and Description |
---|---|
static class |
StringUtil.StringsIterator
An Iterator over an array of Strings.
|
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
format(java.lang.String message,
java.lang.Object[] params)
Apply printf() like formatting to a string.
|
static int |
getEncodedSize(java.lang.String value) |
static java.lang.String |
getFromCompressedUnicode(byte[] string,
int offset,
int len)
Read 8 bit data (in ISO-8859-1 codepage) into a (unicode) Java
String and return.
|
static java.lang.String |
getFromUnicodeLE(byte[] string)
Given a byte array of 16-bit unicode characters in little endian
format (most important byte last), return a Java String representation
of it
|
static java.lang.String |
getFromUnicodeLE(byte[] string,
int offset,
int len)
Given a byte array of 16-bit unicode characters in Little Endian
format (most important byte last), return a Java String representation
of it
|
static java.lang.String |
getPreferredEncoding() |
static boolean |
hasMultibyte(java.lang.String value)
check the parameter has multibyte character
|
static boolean |
isUnicodeString(java.lang.String value)
Checks to see if a given String needs to be represented as Unicode
|
static void |
putCompressedUnicode(java.lang.String input,
byte[] output,
int offset)
Takes a unicode (java) string, and returns it as 8 bit data (in ISO-8859-1
codepage).
|
static void |
putCompressedUnicode(java.lang.String input,
LittleEndianOutput out) |
static void |
putUnicodeLE(java.lang.String input,
byte[] output,
int offset)
Takes a unicode string, and returns it as little endian (most
important byte last) bytes in the supplied byte array.
|
static void |
putUnicodeLE(java.lang.String input,
LittleEndianOutput out) |
static java.lang.String |
readCompressedUnicode(LittleEndianInput in,
int nChars) |
static java.lang.String |
readUnicodeLE(LittleEndianInput in,
int nChars) |
static java.lang.String |
readUnicodeString(LittleEndianInput in)
InputStream in is expected to contain:
ushort nChars
byte is16BitFlag
byte[]/char[] characterData
For this encoding, the is16BitFlag is always present even if nChars==0.
|
static java.lang.String |
readUnicodeString(LittleEndianInput in,
int nChars)
InputStream in is expected to contain:
byte is16BitFlag
byte[]/char[] characterData
For this encoding, the is16BitFlag is always present even if nChars==0.
|
static void |
writeUnicodeString(LittleEndianOutput out,
java.lang.String value)
OutputStream out will get:
ushort nChars
byte is16BitFlag
byte[]/char[] characterData
For this encoding, the is16BitFlag is always present even if nChars==0.
|
static void |
writeUnicodeStringFlagAndData(LittleEndianOutput out,
java.lang.String value)
OutputStream out will get:
byte is16BitFlag
byte[]/char[] characterData
For this encoding, the is16BitFlag is always present even if nChars==0.
|
public static java.lang.String getFromUnicodeLE(byte[] string, int offset, int len) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.IllegalArgumentException
string
- the byte array to be convertedoffset
- the initial offset into the
byte array. it is assumed that string[ offset ] and string[ offset +
1 ] contain the first 16-bit unicode characterlen
- the length of the final stringnull
.java.lang.ArrayIndexOutOfBoundsException
- if offset is out of bounds for
the byte array (i.e., is negative or is greater than or equal to
string.length)java.lang.IllegalArgumentException
- if len is too large (i.e.,
there is not enough data in string to create a String of that
length)public static java.lang.String getFromUnicodeLE(byte[] string)
string
- the byte array to be convertednull
public static java.lang.String getFromCompressedUnicode(byte[] string, int offset, int len)
string
- byte array to readoffset
- offset to read byte arraylen
- length to read byte arraypublic static java.lang.String readCompressedUnicode(LittleEndianInput in, int nChars)
public static java.lang.String readUnicodeString(LittleEndianInput in)
public static java.lang.String readUnicodeString(LittleEndianInput in, int nChars)
readUnicodeString(LittleEndianInput)
can be used.public static void writeUnicodeString(LittleEndianOutput out, java.lang.String value)
public static void writeUnicodeStringFlagAndData(LittleEndianOutput out, java.lang.String value)
writeUnicodeString(LittleEndianOutput, String)
can be used.public static int getEncodedSize(java.lang.String value)
writeUnicodeString(LittleEndianOutput, String)
public static void putCompressedUnicode(java.lang.String input, byte[] output, int offset)
input
- the String containing the data to be writtenoutput
- the byte array to which the data is to be writtenoffset
- an offset into the byte arrat at which the data is start
when writtenpublic static void putCompressedUnicode(java.lang.String input, LittleEndianOutput out)
public static void putUnicodeLE(java.lang.String input, byte[] output, int offset)
input
- the String containing the unicode data to be writtenoutput
- the byte array to hold the uncompressed unicode, should be twice the length of the Stringoffset
- the offset to start writing into the byte arraypublic static void putUnicodeLE(java.lang.String input, LittleEndianOutput out)
public static java.lang.String readUnicodeLE(LittleEndianInput in, int nChars)
public static java.lang.String format(java.lang.String message, java.lang.Object[] params)
message
- the string with embedded formatting info
eg. "This is a test %2.2"params
- array of values to format into the stringpublic static java.lang.String getPreferredEncoding()
public static boolean hasMultibyte(java.lang.String value)
value
- string to checkpublic static boolean isUnicodeString(java.lang.String value)
value
- Copyright © 2005-2010 Potix Corporation. All Rights Reserved.