public class UnicodeInputStream
extends java.io.InputStream
getEncodingFromStream() on
the input stream reader.
This class is not thread safe! When more than one thread wants to use an instance of UnicodeInputStream,
the caller must provide synchronization.| Modifier and Type | Field and Description |
|---|---|
static bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF16BE_BOM
BOM Marker for UTF 16, big endian.
|
static bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF16LE_BOM
BOM Marker for UTF 16, little endian.
|
static bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF32BE_BOM
BOM Marker for UTF 32, big endian.
|
static bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF32LE_BOM
BOM Marker for UTF 32, little endian.
|
static bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF8_BOM
BOM Marker for UTF 8.
|
| Constructor and Description |
|---|
UnicodeInputStream(java.io.InputStream inputStream)
Creates a new UnicodeInputStream object.
|
UnicodeInputStream(java.io.InputStream inputStream,
boolean skipBOM)
Creates a new UnicodeInputStream object.
|
| Modifier and Type | Method and Description |
|---|---|
int |
available() |
void |
close() |
java.lang.String |
getEncodingFromStream()
Read encoding based on BOM.
|
boolean |
isSkipBOM()
Returns true if the input stream discards the BOM.
|
void |
mark(int readlimit) |
boolean |
markSupported() |
int |
read() |
int |
read(byte[] b) |
int |
read(byte[] b,
int off,
int len) |
protected java.lang.String |
readEncoding()
This method gets the encoding from the stream contents if a BOM exists.
|
void |
reset() |
long |
skip(long n) |
public static final bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF8_BOM
public static final bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF16LE_BOM
public static final bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF16BE_BOM
public static final bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF32LE_BOM
public static final bboss.org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF32BE_BOM
public UnicodeInputStream(java.io.InputStream inputStream)
throws java.lang.IllegalStateException,
java.io.IOException
inputStream - The input stream to use for reading.java.lang.IllegalStateExceptionjava.io.IOExceptionpublic UnicodeInputStream(java.io.InputStream inputStream,
boolean skipBOM)
throws java.lang.IllegalStateException,
java.io.IOException
inputStream - The input stream to use for reading.skipBOM - If this is set to true, a BOM read from the stream is discarded. This parameter should normally be true.java.lang.IllegalStateExceptionjava.io.IOExceptionpublic boolean isSkipBOM()
public java.lang.String getEncodingFromStream()
java.lang.IllegalStateException - When a problem reading the BOM occured.protected java.lang.String readEncoding()
throws java.io.IOException
java.io.IOExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.io.InputStreamjava.io.IOExceptionInputStream.close()public int available()
throws java.io.IOException
available in class java.io.InputStreamjava.io.IOExceptionInputStream.available()public void mark(int readlimit)
mark in class java.io.InputStreamInputStream.mark(int)public boolean markSupported()
markSupported in class java.io.InputStreamInputStream.markSupported()public int read()
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionInputStream.read()public int read(byte[] b)
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionInputStream.read(byte[])public int read(byte[] b,
int off,
int len)
throws java.io.IOException
read in class java.io.InputStreamjava.io.IOExceptionInputStream.read(byte[], int, int)public void reset()
throws java.io.IOException
reset in class java.io.InputStreamjava.io.IOExceptionInputStream.reset()public long skip(long n)
throws java.io.IOException
skip in class java.io.InputStreamjava.io.IOExceptionInputStream.skip(long)