Package org.apache.commons.text.io
Class StringSubstitutorReader
- java.lang.Object
-
- java.io.Reader
-
- java.io.FilterReader
-
- org.apache.commons.text.io.StringSubstitutorReader
-
- All Implemented Interfaces:
Closeable,AutoCloseable,Readable
public class StringSubstitutorReader extends FilterReader
AReaderthat performs string substitution on a sourceReaderusing aStringSubstitutor.Using this Reader avoids reading a whole file into memory as a
Stringto perform string substitution, for example, when a Servlet filters a file to a client.This class is not thread-safe.
- Since:
- 1.9
-
-
Constructor Summary
Constructors Constructor Description StringSubstitutorReader(Reader reader, StringSubstitutor stringSubstitutor)Constructs a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intread()Reads a single character.intread(char[] target, int targetIndexIn, int targetLengthIn)Reads characters into a portion of an array.-
Methods inherited from class java.io.FilterReader
close, mark, markSupported, ready, reset, skip
-
Methods inherited from class java.io.Reader
nullReader, read, read, transferTo
-
-
-
-
Constructor Detail
-
StringSubstitutorReader
public StringSubstitutorReader(Reader reader, StringSubstitutor stringSubstitutor)
Constructs a new instance.- Parameters:
reader- the underlying reader containing the template text known to the givenStringSubstitutor.stringSubstitutor- How to replace as we read.- Throws:
NullPointerException- ifreaderisnull.NullPointerException- ifstringSubstitutorisnull.
-
-
Method Detail
-
read
public int read() throws IOExceptionReads a single character.- Overrides:
readin classFilterReader- Returns:
- a character as an
intor-1for end-of-stream. - Throws:
IOException- If an I/O error occurs
-
read
public int read(char[] target, int targetIndexIn, int targetLengthIn) throws IOExceptionReads characters into a portion of an array.- Overrides:
readin classFilterReader- Parameters:
target- Target buffer.targetIndexIn- Index in the target at which to start storing characters.targetLengthIn- Maximum number of characters to read.- Returns:
- The number of characters read, or -1 on end of stream.
- Throws:
IOException- If an I/O error occurs
-
-