| java.lang.Object org.hsqldb.lib.StringConverter
StringConverter | public class StringConverter (Code) | | Collection of static methods for converting strings between different
formats and to and from byte arrays.
New class, with extensively enhanced and rewritten Hypersonic code.
author: Thomas Mueller (Hypersonic SQL Group) author: fredt@users version: 1.8.0 since: 1.7.2 |
Method Summary | |
public static String | asciiToUnicode(byte[] s, int offset, int length) Hsqldb specific decoding used only for log files.
This method converts the 7 bit escaped ASCII strings in a log file
back into Java Unicode strings. | public static String | asciiToUnicode(String s) | public static String | byteToHex(byte[] b) | public static String | byteToString(byte[] b, String charset) | static int | count(String s, char c) | public static int | getUTFSize(String s) | public static byte[] | hexToByte(String s) | public static String | inputStreamToString(InputStream x, int length) Using a Reader and a Writer, returns a String from an InputStream. | public static String | readUTF(byte[] bytearr, int offset, int length) | public static String | readUTF(byte[] bytearr, int offset, int length, char[] buf) | byte[] | stringToFullByteArray(String s) Converts a String into a byte array by using a big-endian two byte
representation of each char value in the string. | public static String | toQuotedString(String s, char quoteChar, boolean extraQuote) Returns the quoted version of the string using the quotechar argument.
doublequote argument indicates whether each instance of quotechar
inside the string is doubled.
null string argument returns null. | public static int | unicodeToAscii(HsqlByteArrayOutputStream b, String s, boolean doubleSingleQuotes) Hsqldb specific encoding used only for log files.
The SQL statements that need to be written to the log file (input) are
Java Unicode strings. | public static String | unicodeToHexString(String s) | public static void | writeHex(byte[] o, int from, byte[] b) Converts a byte array into hexadecimal characters
which are written as ASCII to the given output stream. | public static int | writeUTF(String str, HsqlByteArrayOutputStream out) Writes a string to the specified DataOutput using UTF-8 encoding in a
machine-independent manner. |
asciiToUnicode | public static String asciiToUnicode(byte[] s, int offset, int length)(Code) | | Hsqldb specific decoding used only for log files.
This method converts the 7 bit escaped ASCII strings in a log file
back into Java Unicode strings. See unicodeToAccii() above,
Parameters: s - encoded ASCII string in byte array Parameters: offset - position of first byte Parameters: length - number of bytes to use Java Unicode string |
byteToHex | public static String byteToHex(byte[] b)(Code) | | Converts a byte array into a hexadecimal string
Parameters: b - byte array hex string |
count | static int count(String s, char c)(Code) | | Counts Character c in String s
Parameters: String - s int count |
hexToByte | public static byte[] hexToByte(String s) throws IOException(Code) | | Compacts a hexadecimal string into a byte array
Parameters: s - hexadecimal string byte array for the hex string throws: IOException - |
inputStreamToString | public static String inputStreamToString(InputStream x, int length) throws IOException(Code) | | Using a Reader and a Writer, returns a String from an InputStream.
|
stringToFullByteArray | byte[] stringToFullByteArray(String s)(Code) | | Converts a String into a byte array by using a big-endian two byte
representation of each char value in the string.
|
toQuotedString | public static String toQuotedString(String s, char quoteChar, boolean extraQuote)(Code) | | Returns the quoted version of the string using the quotechar argument.
doublequote argument indicates whether each instance of quotechar
inside the string is doubled.
null string argument returns null. If the caller needs the literal
"NULL" it should created it itself
The reverse conversion is handled in Tokenizer.java
|
unicodeToAscii | public static int unicodeToAscii(HsqlByteArrayOutputStream b, String s, boolean doubleSingleQuotes)(Code) | | Hsqldb specific encoding used only for log files.
The SQL statements that need to be written to the log file (input) are
Java Unicode strings. input is converted into a 7bit escaped ASCII
string (output)with the following transformations.
All characters outside the 0x20-7f range are converted to a
escape sequence and added to output.
If a backslash character is immdediately followed by 'u', the
backslash character is converted to escape sequence and
added to output.
All the remaining characters in input are added to output without
conversion.
The escape sequence is backslash, letter u, xxxx, where xxxx
is the hex representation of the character code.
(fredt@users)
Parameters: b - output stream to wite to Parameters: s - Java Unicode string number of bytes written out |
unicodeToHexString | public static String unicodeToHexString(String s)(Code) | | Converts a Unicode string into UTF8 then convert into a hex string
Parameters: s - normal Unicode string hex string representation of UTF8 encoding of the input |
writeHex | public static void writeHex(byte[] o, int from, byte[] b)(Code) | | Converts a byte array into hexadecimal characters
which are written as ASCII to the given output stream.
Parameters: o - output stream Parameters: b - byte array |
writeUTF | public static int writeUTF(String str, HsqlByteArrayOutputStream out)(Code) | | Writes a string to the specified DataOutput using UTF-8 encoding in a
machine-independent manner.
Parameters: str - a string to be written. Parameters: out - destination to write to The number of bytes written out. |
|
|