com.ibm.btt.config
Class UnicodeBufferedInputStream.UnicodeInputStream
java.lang.Object
java.io.InputStream
com.ibm.btt.config.UnicodeBufferedInputStream.UnicodeInputStream
- All Implemented Interfaces:
- java.io.Closeable
- Enclosing class:
- UnicodeBufferedInputStream
public class UnicodeBufferedInputStream.UnicodeInputStream
- extends java.io.InputStream
This inputstream will recognize unicode BOM marks and will skip bytes if
getEncoding() method is called before any of the read(...) methods.
Usage pattern:
String enc = "ISO-8859-1"; // or NULL to use systemdefault
FileInputStream fis = new FileInputStream(file);
UnicodeInputStream uin = new UnicodeInputStream(fis, enc);
enc = uin.getEncoding(); // check and skip possible BOM bytes
InputStreamReader in;
if (enc == null) in = new InputStreamReader(uin);
else in = new InputStreamReader(uin, enc);
Field Summary |
(package private) java.lang.String |
defaultEnc
|
(package private) java.lang.String |
encoding
|
(package private) java.io.PushbackInputStream |
internalIn
|
Method Summary |
void |
close()
|
java.lang.String |
getDefaultEncoding()
Get default encoding |
java.lang.String |
getEncoding()
Get input stream encoding |
protected void |
init()
Read-ahead four bytes and check for BOM marks. |
int |
read()
|
Methods inherited from class java.io.InputStream |
available, mark, markSupported, read, read, reset, skip |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
internalIn
java.io.PushbackInputStream internalIn
defaultEnc
java.lang.String defaultEnc
encoding
java.lang.String encoding
UnicodeBufferedInputStream.UnicodeInputStream
UnicodeBufferedInputStream.UnicodeInputStream(java.io.InputStream in,
java.lang.String defaultEnc)
getDefaultEncoding
public java.lang.String getDefaultEncoding()
- Get default encoding
- Returns:
- default encoding
getEncoding
public java.lang.String getEncoding()
- Get input stream encoding
- Returns:
- encoding
init
protected void init()
throws java.io.IOException
- Read-ahead four bytes and check for BOM marks. Extra bytes are unread
back to the stream, only BOM bytes are skipped.
- Throws:
java.io.IOException
close
public void close()
throws java.io.IOException
- Specified by:
close
in interface java.io.Closeable
- Overrides:
close
in class java.io.InputStream
- Throws:
java.io.IOException
read
public int read()
throws java.io.IOException
- Specified by:
read
in class java.io.InputStream
- Throws:
java.io.IOException
(c) Copyright IBM Corporation 1998, 2011