Package marauroa.common.io
Class UnicodeSupportingInputStreamReader
java.lang.Object
java.io.Reader
marauroa.common.io.UnicodeSupportingInputStreamReader
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Readable
Generic unicode textreader, which will use BOM mark
to identify the encoding to be used. If BOM is not found
then use a given default or system encoding.
- Since:
- 2.1
-
Field Summary
-
Constructor Summary
ConstructorDescriptionCreates a new UnicodeSupportingInputStreamReaderUnicodeSupportingInputStreamReader(InputStream in, String defaultEnc)
Creates a new UnicodeSupportingInputStreamReader -
Method Summary
Methods inherited from class java.io.Reader
mark, markSupported, nullReader, read, read, read, ready, reset, skip, transferTo
-
Constructor Details
-
UnicodeSupportingInputStreamReader
Creates a new UnicodeSupportingInputStreamReader- Parameters:
in
- inputstream to be read
-
UnicodeSupportingInputStreamReader
Creates a new UnicodeSupportingInputStreamReader- Parameters:
in
- inputstream to be readdefaultEnc
- default encoding if stream does not have BOM marker. Give NULL to use system-level default.
-
-
Method Details
-
getDefaultEncoding
returns the default encoding- Returns:
- default encoding
-
getEncoding
Get stream encoding or NULL if stream is uninitialized. Call init() or read() method to initialize it.- Returns:
- actual encoding used to read this file
-
init
Read-ahead four bytes and check for BOM marks. Extra bytes are unread back to the stream, only BOM bytes are skipped.- Throws:
IOException
- in cases of an I/O error
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classReader
- Throws:
IOException
-
read
- Specified by:
read
in classReader
- Throws:
IOException
-