Package org.python.core.io
Class TextIOBase
- java.lang.Object
-
- org.python.core.io.IOBase
-
- 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
Fields Modifier and Type Field Description 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
Constructors Constructor Description TextIOBase(BufferedIOBase bufferedIO)
Contruct a TextIOBase wrapping the given BufferedIOBase.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.io.InputStream
asInputStream()
Coerce this into an InputStream if possible, or return null.java.io.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.java.lang.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.java.lang.String
readall()
Read until EOF.int
readinto(PyObject buf)
Read into the given PyObject that implements the Jython buffer API (with write access) or is a PyArray.java.lang.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(java.lang.String buf)
Write the given String to the IO stream.-
Methods inherited from class org.python.core.io.IOBase
checkClosed, checkReadable, checkWritable, seek
-
-
-
-
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 java.lang.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 java.lang.String readall()
Read until EOF.- Returns:
- a String containing the bytes read
-
readline
public java.lang.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 Jython buffer API (with write access) or is a PyArray.- Parameters:
buf
- a PyObject compatible with the buffer API- Returns:
- the amount of data read as an int
-
write
public int write(java.lang.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.
-
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.
-
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.
-
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.
-
tell
public long tell()
Description copied from class:IOBase
Return the current stream position.
-
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.
-
isatty
public boolean isatty()
Description copied from class:IOBase
Returns whether this is an 'interactive' stream. Returns False if we don't know.
-
readable
public boolean readable()
Description copied from class:IOBase
Return whether this file was opened for reading.
-
writable
public boolean writable()
Description copied from class:IOBase
Return whether this file was opened for writing.
-
closed
public boolean closed()
Description copied from class:IOBase
Return whether this file has been closed.
-
asInputStream
public java.io.InputStream asInputStream()
Description copied from class:IOBase
Coerce this into an InputStream if possible, or return null.- Overrides:
asInputStream
in classIOBase
-
asOutputStream
public java.io.OutputStream asOutputStream()
Description copied from class:IOBase
Coerce this into an OutputStream if possible, or return null.- Overrides:
asOutputStream
in classIOBase
-
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
-
-