Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Data streams(3) Readers and Writers Readers and Writers java.io.Reader class: a character-based equivalent of the java.io.InputStream class. Character-oriented A better alternative than input streams and output streams when used on text data. To better support the Unicode character streams. What are Unicode characters? ASCII characters - Unicode characters - composed of 8 bits offering a range of 256 possible characters presented by 16 bits allowing for a maximum of 65536 possible characters UTF-8 - a modified form of Unicode encoding A variable-width encoding format; some characters are a single byte and others multiple bytes. The java.io.Reader class The java.io.Reader class Methods void close() int read() - int read(char[] characterArray) - reads and returns a chracter. populates an array of characters with data. boolean ready() - returns “true” if there is data available. …… The java.io.Reader class Low-level readers CharArrayReader FileReader PipedReader StringReader InputStreamReader Filter readers BufferedReader … Low-level Readers Low-level readers* CharArrayReader FileReader Reads a sequence of characters from a thread communication pipe, like a PipedInputStream StringReader Reads from a file, just like a FileInputStream PipedReader Reads from a character array Reads a sequence of characters from a string, as if it were a StringBufferInputStream InputStreamReader Bridges the divide between an input stream and a reader, by reading from the input stream. CharArrayReader* Constructors CharArrayReader(char[] charArray) - creates a character array reader that will operate on the specified array. CharArrayReader(char[] charArray, int offset, int length) FileReader* Constructors FileReader(File file) - creates a reader that will access the contents of the specified file object. FileReader(String filename) - … the specified filename FileReader(FileDescriptor descriptor) - … the specified descriptor handle PipedReader* Constructors PipedReader() - creates an unconnected pipe reader PipedReader(PipedWriter writer) - creates a connected pipe that will read the output of the specified writer Methods void connect(PipedWriter writer) - connects the reader to the specified writer StringReader* Constructor StringReader(String stringToBeRead) - reads from the beginning of the specified string until the end InputStreamReader Constructors InputStreamReader(InputStream input) - connects an input stream to the reader InputStreamReader(InputStream input, String encoding) - … using the specified encoding form Methods String getEncoding() - returns the name of the character encoding used by this stream Filter readers BufferedReader Constructors BufferedReader(Reader reader) - reads data from the specified reader into a buffer BufferedReader(Reader reader, int bufferSize) Methods String readLine() - reads a line of text form the underlying stream. The line is terminated by a line separator, such as a carriage return/linefeed. Code for InputStreamToReaderDemo The java.io.Writer class The java.io.Writer class Methods void close() void flush() - flushes any unsent data. void void void void void write(int character) write(char[] charArray) write(char[] charArray, int offset, int length) write(String string) write(String string, int offset, int length) The java.io.Writer class Low-level writers CharArrayWriter FileWriter PipedWriter StringWriter OutputStreamWriter Filter writers BufferedWriter PrintWriter …… Low-level Writers Low-level writers* CharArrayWriter FileWriter Writes characters to a thread communication pipe StringWriter Writes to a local file PipedWriter Writes to a variable length character array (and resizes as characters are added) Writes characters to a string buffer OutputStreamWriter Writes to a legacy output stream CharArrayWriter* …… Code for OutputStreamToWriterDemo Filtered Writers BufferedWriter Constructors BufferedWriter(Writer writer) - creates a buffered writer, connected to a specified writer BufferedWriter(Writer writer, int bufferSize) - … with a buffer of the specified size Methods No methods PrintWriter The sister class of the PrintStream, and provides the same methods for writing datatypes as text. Constructors PrintWriter(Writer writer) - creates a print writer, writing to the specified writer PrintWriter(Writer writer, boolean flushFlag) - auto-flush whenever a println method or a line separator is sent Methods void print() void println()