org.python.core.io
Class TextIOBase

java.lang.Object
  extended by org.python.core.io.IOBase
      extended by org.python.core.io.TextIOBase
Direct Known Subclasses:
BinaryIOWrapper, UniversalIOWrapper

public abstract class TextIOBase
extends IOBase

Base class for text I/O. This class provides a character and line based interface to stream I/O.

Author:
Philip Jenvey

Field Summary
static int CHUNK_SIZE
          The size of chunks read for readline
 
Fields inherited from class org.python.core.io.IOBase
DEFAULT_BUFFER_SIZE
 
Constructor Summary
TextIOBase(BufferedIOBase bufferedIO)
          Contruct a TextIOBase wrapping the given BufferedIOBase.
 
Method Summary
 InputStream asInputStream()
          Coerce this into an InputStream if possible, or return null.
 OutputStream asOutputStream()
          Coerce this into an OutputStream if possible, or return null.
 void close()
          Flushes and closes the IO object.
 boolean closed()
          Return whether this file has been closed.
 RawIOBase fileno()
          Returns underlying file descriptor if one exists.
 void flush()
          Flushes write buffers, if applicable.
 PyObject getNewlines()
          Return the known Newline types, as a PyObject, encountered while reading this file.
 boolean isatty()
          Returns whether this is an 'interactive' stream.
 String read(int size)
          Read and return up to size bytes, contained in a String.
 boolean readable()
          Return whether this file was opened for reading.
 String readall()
          Read until EOF.
 int readinto(PyObject buf)
          Read into the given PyObject that implements the read-write buffer interface (currently just a PyArray).
 String readline(int size)
          Read until size, newline or EOF.
 long seek(long pos, int whence)
          Seek to byte offset pos relative to position indicated by whence: 0 Start of stream (the default). pos should be >= 0; 1 Current position - whence may be negative; 2 End of stream - whence usually negative.
 long tell()
          Return the current stream position.
 long truncate(long pos)
          Truncate file to size in bytes.
 boolean writable()
          Return whether this file was opened for writing.
 int write(String buf)
          Write the given String to the IO stream.
 
Methods inherited from class org.python.core.io.IOBase
checkClosed, checkReadable, checkWritable, seek
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CHUNK_SIZE

public static final int CHUNK_SIZE
The size of chunks read for readline

See Also:
Constant Field Values
Constructor Detail

TextIOBase

public TextIOBase(BufferedIOBase bufferedIO)
Contruct a TextIOBase wrapping the given BufferedIOBase.

Parameters:
bufferedIO - a BufferedIOBase to wrap
Method Detail

read

public String read(int size)
Read and return up to size bytes, contained in a String. Returns an empty String on EOF

Parameters:
size - the number of bytes to read
Returns:
a String containing the bytes read

readall

public String readall()
Read until EOF.

Returns:
a String containing the bytes read

readline

public String readline(int size)
Read until size, newline or EOF. Returns an empty string if EOF is hit immediately.

Parameters:
size - the number of bytes to read
Returns:
a String containing the bytes read

readinto

public int readinto(PyObject buf)
Read into the given PyObject that implements the read-write buffer interface (currently just a PyArray).

Parameters:
buf - a PyObject implementing the read-write buffer interface
Returns:
the amount of data read as an int

write

public int write(String buf)
Write the given String to the IO stream. Returns the number of characters written.

Parameters:
buf - a String value
Returns:
the number of characters written as an int

truncate

public long truncate(long pos)
Description copied from class: IOBase
Truncate file to size in bytes. Returns the new size.

Overrides:
truncate in class IOBase
Parameters:
pos - a long size to truncate to
Returns:
a long size value the file was truncated to

flush

public void flush()
Description copied from class: IOBase
Flushes write buffers, if applicable. This is a no-op for read-only and non-blocking streams.

Overrides:
flush in class IOBase

close

public void close()
Description copied from class: IOBase
Flushes and closes the IO object. This must be idempotent. It should also set a flag for the 'closed' property (see below) to test.

Overrides:
close in class IOBase

seek

public long seek(long pos,
                 int whence)
Description copied from class: IOBase
Seek to byte offset pos relative to position indicated by whence: 0 Start of stream (the default). pos should be >= 0; 1 Current position - whence may be negative; 2 End of stream - whence usually negative. Returns the new absolute position.

Overrides:
seek in class IOBase
Parameters:
pos - a long position value
whence - an int whence value
Returns:
a long position value seeked to

tell

public long tell()
Description copied from class: IOBase
Return the current stream position.

Overrides:
tell in class IOBase
Returns:
a long position value

fileno

public RawIOBase fileno()
Description copied from class: IOBase
Returns underlying file descriptor if one exists. Raises IOError if the IO object does not use a file descriptor.

Overrides:
fileno in class IOBase
Returns:
a file descriptor

isatty

public boolean isatty()
Description copied from class: IOBase
Returns whether this is an 'interactive' stream. Returns False if we don't know.

Overrides:
isatty in class IOBase
Returns:
a boolean, true if an 'interactive' stream

readable

public boolean readable()
Description copied from class: IOBase
Return whether this file was opened for reading.

Overrides:
readable in class IOBase
Returns:
true if the file was opened for reading

writable

public boolean writable()
Description copied from class: IOBase
Return whether this file was opened for writing.

Overrides:
writable in class IOBase
Returns:
true if the file was opened for writing

closed

public boolean closed()
Description copied from class: IOBase
Return whether this file has been closed.

Overrides:
closed in class IOBase
Returns:
true if the file has been closed

asInputStream

public InputStream asInputStream()
Description copied from class: IOBase
Coerce this into an InputStream if possible, or return null.

Overrides:
asInputStream in class IOBase

asOutputStream

public OutputStream asOutputStream()
Description copied from class: IOBase
Coerce this into an OutputStream if possible, or return null.

Overrides:
asOutputStream in class IOBase

getNewlines

public PyObject getNewlines()
Return the known Newline types, as a PyObject, encountered while reading this file. Returns None for all modes except universal newline mode.

Returns:
a PyObject containing all encountered Newlines, or None


Jython homepage