Package org.postgresql.core
Class Encoding
- java.lang.Object
-
- org.postgresql.core.Encoding
-
public class Encoding extends Object
Representation of a particular character encoding.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Stringdecode(byte[] encodedString)Decode an array of bytes into a string.Stringdecode(byte[] encodedString, int offset, int length)Decode an array of bytes into a string.static EncodingdefaultEncoding()Get an Encoding using the default encoding for the JVM.byte[]encode(String s)Encode a string to an array of bytes.static EncodinggetDatabaseEncoding(String databaseEncoding)Construct an Encoding for a given database encoding.ReadergetDecodingReader(InputStream in)Get a Reader that decodes the given InputStream using this encoding.WritergetEncodingWriter(OutputStream out)Get a Writer that encodes to the given OutputStream using this encoding.static EncodinggetJVMEncoding(String jvmEncoding)Construct an Encoding for a given JVM encoding.booleanhasAsciiNumbers()Returns true if this encoding has characters '-' and '0'..'9' in exactly same posision as ascii.Stringname()Get the name of the (JVM) encoding used.StringtoString()
-
-
-
Constructor Detail
-
Encoding
protected Encoding(String encoding)
Use the charset passed as parameter.- Parameters:
encoding- charset name to use
-
-
Method Detail
-
hasAsciiNumbers
public boolean hasAsciiNumbers()
Returns true if this encoding has characters '-' and '0'..'9' in exactly same posision as ascii.- Returns:
- true if the bytes can be scanned directly for ascii numbers.
-
getJVMEncoding
public static Encoding getJVMEncoding(String jvmEncoding)
Construct an Encoding for a given JVM encoding.- Parameters:
jvmEncoding- the name of the JVM encoding- Returns:
- an Encoding instance for the specified encoding, or an Encoding instance for the default JVM encoding if the specified encoding is unavailable.
-
getDatabaseEncoding
public static Encoding getDatabaseEncoding(String databaseEncoding)
Construct an Encoding for a given database encoding.- Parameters:
databaseEncoding- the name of the database encoding- Returns:
- an Encoding instance for the specified encoding, or an Encoding instance for the default JVM encoding if the specified encoding is unavailable.
-
name
public String name()
Get the name of the (JVM) encoding used.- Returns:
- the JVM encoding name used by this instance.
-
encode
public byte[] encode(String s) throws IOException
Encode a string to an array of bytes.- Parameters:
s- the string to encode- Returns:
- a bytearray containing the encoded string
- Throws:
IOException- if something goes wrong
-
decode
public String decode(byte[] encodedString, int offset, int length) throws IOException
Decode an array of bytes into a string.- Parameters:
encodedString- a byte array containing the string to decodeoffset- the offset inencodedStringof the first byte of the encoded representationlength- the length, in bytes, of the encoded representation- Returns:
- the decoded string
- Throws:
IOException- if something goes wrong
-
decode
public String decode(byte[] encodedString) throws IOException
Decode an array of bytes into a string.- Parameters:
encodedString- a byte array containing the string to decode- Returns:
- the decoded string
- Throws:
IOException- if something goes wrong
-
getDecodingReader
public Reader getDecodingReader(InputStream in) throws IOException
Get a Reader that decodes the given InputStream using this encoding.- Parameters:
in- the underlying stream to decode from- Returns:
- a non-null Reader implementation.
- Throws:
IOException- if something goes wrong
-
getEncodingWriter
public Writer getEncodingWriter(OutputStream out) throws IOException
Get a Writer that encodes to the given OutputStream using this encoding.- Parameters:
out- the underlying stream to encode to- Returns:
- a non-null Writer implementation.
- Throws:
IOException- if something goes wrong
-
defaultEncoding
public static Encoding defaultEncoding()
Get an Encoding using the default encoding for the JVM.- Returns:
- an Encoding instance
-
-