org.apache.commons.io.input
Class CharSequenceInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by org.apache.commons.io.input.CharSequenceInputStream
All Implemented Interfaces:
java.io.Closeable

public class CharSequenceInputStream
extends java.io.InputStream

InputStream implementation that can read from String, StringBuffer, StringBuilder or CharBuffer.

Note: Supports mark(int) and reset().

Since:
2.2

Field Summary
private  java.nio.ByteBuffer bbuf
           
private  java.nio.CharBuffer cbuf
           
private  java.nio.charset.CharsetEncoder encoder
           
private  int mark
           
 
Constructor Summary
CharSequenceInputStream(java.lang.CharSequence s, java.nio.charset.Charset charset)
          Constructor, calls CharSequenceInputStream(CharSequence, Charset, int) with a buffer size of 2048.
CharSequenceInputStream(java.lang.CharSequence s, java.nio.charset.Charset charset, int bufferSize)
          Constructor.
CharSequenceInputStream(java.lang.CharSequence s, java.lang.String charset)
          Constructor, calls CharSequenceInputStream(CharSequence, String, int) with a buffer size of 2048.
CharSequenceInputStream(java.lang.CharSequence s, java.lang.String charset, int bufferSize)
          Constructor, calls CharSequenceInputStream(CharSequence, Charset, int).
 
Method Summary
 int available()
           
 void close()
           
private  void fillBuffer()
          Fills the byte output buffer from the input char buffer.
 void mark(int readlimit)
          
 boolean markSupported()
           
 int read()
           
 int read(byte[] b)
           
 int read(byte[] b, int off, int len)
           
 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

encoder

private final java.nio.charset.CharsetEncoder encoder

cbuf

private final java.nio.CharBuffer cbuf

bbuf

private final java.nio.ByteBuffer bbuf

mark

private int mark
Constructor Detail

CharSequenceInputStream

public CharSequenceInputStream(java.lang.CharSequence s,
                               java.nio.charset.Charset charset,
                               int bufferSize)
Constructor.

Parameters:
s - the input character sequence
charset - the character set name to use
bufferSize - the buffer size to use.

CharSequenceInputStream

public CharSequenceInputStream(java.lang.CharSequence s,
                               java.lang.String charset,
                               int bufferSize)
Constructor, calls CharSequenceInputStream(CharSequence, Charset, int).

Parameters:
s - the input character sequence
charset - the character set name to use
bufferSize - the buffer size to use.

CharSequenceInputStream

public CharSequenceInputStream(java.lang.CharSequence s,
                               java.nio.charset.Charset charset)
Constructor, calls CharSequenceInputStream(CharSequence, Charset, int) with a buffer size of 2048.

Parameters:
s - the input character sequence
charset - the character set name to use

CharSequenceInputStream

public CharSequenceInputStream(java.lang.CharSequence s,
                               java.lang.String charset)
Constructor, calls CharSequenceInputStream(CharSequence, String, int) with a buffer size of 2048.

Parameters:
s - the input character sequence
charset - the character set name to use
Method Detail

fillBuffer

private void fillBuffer()
                 throws java.nio.charset.CharacterCodingException
Fills the byte output buffer from the input char buffer.

Throws:
java.nio.charset.CharacterCodingException - an error encoding data

read

public int read(byte[] b,
                int off,
                int len)
         throws java.io.IOException
Overrides:
read 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

read

public int read(byte[] b)
         throws java.io.IOException
Overrides:
read in class java.io.InputStream
Throws:
java.io.IOException

skip

public long skip(long n)
          throws java.io.IOException
Overrides:
skip in class java.io.InputStream
Throws:
java.io.IOException

available

public int available()
              throws java.io.IOException
Overrides:
available in class java.io.InputStream
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

mark

public void mark(int readlimit)

Overrides:
mark in class java.io.InputStream
Parameters:
readlimit - max read limit (ignored)

reset

public void reset()
           throws java.io.IOException
Overrides:
reset in class java.io.InputStream
Throws:
java.io.IOException

markSupported

public boolean markSupported()
Overrides:
markSupported in class java.io.InputStream


Copyright (c) 2002-2013 Apache Software Foundation