public abstract class EscapedByteLookupCharset
extends java.nio.charset.Charset
Modifier and Type | Class and Description |
---|---|
protected class |
EscapedByteLookupCharset.Decoder
The Decoder inner class handles the decoding of the
charset using the inverse lookup tables.
|
protected class |
EscapedByteLookupCharset.Encoder
The Encoder inner class handles the encoding of the
charset using the lookup tables.
|
Modifier | Constructor and Description |
---|---|
protected |
EscapedByteLookupCharset(java.lang.String canonicalName,
java.lang.String[] aliases,
byte escape,
int[] byteToChar,
int[] byteToCharEscaped,
int[][] charToByte,
int[][] charToByteEscaped)
Initializes a new charset with the given canonical name and alias
set, and byte-to-char/char-to-byte lookup tables.
|
Modifier and Type | Method and Description |
---|---|
boolean |
contains(java.nio.charset.Charset cs)
Tells whether or not this charset contains the given charset.
|
java.nio.charset.CharsetDecoder |
newDecoder()
Constructs a new decoder for this charset.
|
java.nio.charset.CharsetEncoder |
newEncoder()
Constructs a new encoder for this charset.
|
protected EscapedByteLookupCharset(java.lang.String canonicalName, java.lang.String[] aliases, byte escape, int[] byteToChar, int[] byteToCharEscaped, int[][] charToByte, int[][] charToByteEscaped)
canonicalName
- The canonical name of this charsetaliases
- An array of this charset's aliases, or null if it has no aliasesescape
- the special escape byte valuebyteToChar
- a byte-to-char conversion table for this charsetbyteToCharEscaped
- a byte-to-char conversion table for this charset
for the escaped characterscharToByte
- a char-to-byte conversion table for this charset. It can
be generated on-the-fly by calling
createInverseLookupTable(byteToChar)
.charToByteEscaped
- a char-to-byte conversion table for this charset
for the escaped charactersjava.nio.charset.IllegalCharsetNameException
- If the canonical name or any of the aliases are illegalpublic boolean contains(java.nio.charset.Charset cs)
A charset C is said to contain a charset D if, and only if, every character representable in D is also representable in C. If this relationship holds then it is guaranteed that every string that can be encoded in D can also be encoded in C without performing any replacements.
That C contains D does not imply that each character representable in C by a particular byte sequence is represented in D by the same byte sequence, although sometimes this is the case.
Every charset contains itself.
This method computes an approximation of the containment relation: If it returns true then the given charset is known to be contained by this charset; if it returns false, however, then it is not necessarily the case that the given charset is not contained in this charset.
contains
in class java.nio.charset.Charset
public java.nio.charset.CharsetDecoder newDecoder()
newDecoder
in class java.nio.charset.Charset
public java.nio.charset.CharsetEncoder newEncoder()
newEncoder
in class java.nio.charset.Charset
java.lang.UnsupportedOperationException
- If this charset does not support encoding