Class 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
    • 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 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 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.
        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 java.io.InputStream asInputStream()
        Description copied from class: IOBase
        Coerce this into an InputStream if possible, or return null.
        Overrides:
        asInputStream in class IOBase
      • asOutputStream

        public java.io.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