|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.io.InputStream
org.apache.velocity.io.UnicodeInputStream
public class UnicodeInputStream
This is an input stream that is unicode BOM aware. This allows you to e.g. read
Windows Notepad Unicode files as Velocity templates.
It allows you to check the actual encoding of a file by calling 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.
Field Summary | |
---|---|
static org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF16BE_BOM
BOM Marker for UTF 16, big endian. |
static org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF16LE_BOM
BOM Marker for UTF 16, little endian. |
static org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF32BE_BOM
BOM Marker for UTF 32, big endian. |
static org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF32LE_BOM
BOM Marker for UTF 32, little endian. |
static org.apache.velocity.io.UnicodeInputStream.UnicodeBOM |
UTF8_BOM
BOM Marker for UTF 8. |
Constructor Summary | |
---|---|
UnicodeInputStream(java.io.InputStream inputStream)
Creates a new UnicodeInputStream object. |
|
UnicodeInputStream(java.io.InputStream inputStream,
boolean skipBOM)
Creates a new UnicodeInputStream object. |
Method Summary | |
---|---|
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)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF8_BOM
public static final org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF16LE_BOM
public static final org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF16BE_BOM
public static final org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF32LE_BOM
public static final org.apache.velocity.io.UnicodeInputStream.UnicodeBOM UTF32BE_BOM
Constructor Detail |
---|
public UnicodeInputStream(java.io.InputStream inputStream) throws java.lang.IllegalStateException, java.io.IOException
inputStream
- The input stream to use for reading.
java.lang.IllegalStateException
java.io.IOException
public 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.IllegalStateException
java.io.IOException
Method Detail |
---|
public 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.IOException
public void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in class java.io.InputStream
java.io.IOException
InputStream.close()
public int available() throws java.io.IOException
available
in class java.io.InputStream
java.io.IOException
InputStream.available()
public void mark(int readlimit)
mark
in class java.io.InputStream
InputStream.mark(int)
public boolean markSupported()
markSupported
in class java.io.InputStream
InputStream.markSupported()
public int read() throws java.io.IOException
read
in class java.io.InputStream
java.io.IOException
InputStream.read()
public int read(byte[] b) throws java.io.IOException
read
in class java.io.InputStream
java.io.IOException
InputStream.read(byte[])
public int read(byte[] b, int off, int len) throws java.io.IOException
read
in class java.io.InputStream
java.io.IOException
InputStream.read(byte[], int, int)
public void reset() throws java.io.IOException
reset
in class java.io.InputStream
java.io.IOException
InputStream.reset()
public long skip(long n) throws java.io.IOException
skip
in class java.io.InputStream
java.io.IOException
InputStream.skip(long)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |