Class PyFileIO

    • Field Detail

      • TYPE

        public static final PyType TYPE
      • closefd

        public final boolean closefd
        Whether to close the underlying stream on closing this object.
      • mode

        public final PyString mode
        The mode as a PyString based on readable and writable
    • Constructor Detail

      • PyFileIO

        public PyFileIO​(PyObject file,
                        OpenMode mode,
                        boolean closefd)
        Construct an open _io.FileIO starting with an object that may be a file name or a file descriptor (actually a RawIOBase). Only the relevant flags within the parsed mode object are consulted (so that flags meaningful to this sub-class need not be processed out).
        Parameters:
        file - path or descriptor on which this should be constructed
        mode - type of access specified
        closefd - if false, do not close fd on call to close()
      • PyFileIO

        public PyFileIO​(PyType subtype,
                        PyObject file,
                        OpenMode mode,
                        boolean closefd)
        Construct an open _io.FileIO for a sub-class constructor starting with an object that may be a file name or a file descriptor (actually a RawIOBase). Only the relevant flags within the parsed mode object are consulted (so that flags meaningful to this sub-class need not be processed out).
        Parameters:
        subtype - for which construction is occurring
        file - path or descriptor on which this should be constructed
        mode - type of access specified
        closefd - if false, do not close file on call to close()
    • Method Detail

      • mode_readonly

        public final void mode_readonly​(PyString value)
      • readinto

        public PyObject readinto​(PyObject buf)
        Description copied from class: PyRawIOBase
        Read up to len(b) bytes into bytearray b and return the number of bytes read. If the object is in non-blocking mode and no bytes are available, None is returned.";
        Overrides:
        readinto in class PyRawIOBase
        Parameters:
        buf - byte array to try to fill
        Returns:
        number of bytes actually read or Py.None (when a non-blocking source is not ready with further data)
      • write

        public PyObject write​(PyObject buf)
        Description copied from class: PyRawIOBase
        Write the given bytes or bytearray object to the underlying raw stream and return the number of bytes written.
        Overrides:
        write in class PyRawIOBase
        Parameters:
        buf - buffer of bytes to be written
        Returns:
        the number of bytes written
      • seek

        public long seek​(long pos,
                         int whence)
        Description copied from class: PyIOBase
        Position the read or write pointer at a given byte offset pos relative to a position indicated by whence.
        • If whence=0, the position will be set to pos bytes.
        • If whence=1 the position will be set to the current position plus pos.
        • If whence=2 the position will be set to the stream size plus pos (and usually pos<=0).
        Overrides:
        seek in class PyIOBase
        Parameters:
        pos - relative to the specified point
        whence - 0=from start, 1=from here, 2=from end
        Returns:
        the new current position
      • truncate

        public long truncate()
        Description copied from class: PyIOBase
        Truncate file to size bytes to the current position (as reported by tell()).
        Overrides:
        truncate in class PyIOBase
        Returns:
        the new size
      • truncate

        public long truncate​(long size)
        Description copied from class: PyIOBase
        Truncate file to size bytes.
        Overrides:
        truncate in class PyIOBase
        Parameters:
        size - requested for stream
        Returns:
        the new size
      • close

        public void close()
        Close the underlying ioDelegate only if closefd was specified as (or defaulted to) True.
        Overrides:
        close in class PyIOBase
      • seekable

        public boolean seekable()
        Description copied from class: PyIOBase
        Is the stream capable of positioning the read/write pointer?
        Overrides:
        seekable in class PyIOBase
        Returns:
        True if may be positioned
      • fileno

        public PyObject fileno()
        Description copied from class: PyIOBase
        Return a file descriptor for the stream. A CPython file descriptor is an int, but this is not the natural choice in Jython, since Java has no such convention of using integers. File descriptors should be passed around opaquely, so their actual type is irrelevant, as long as (say) _jyio.open(PyObject[], String[]) accepts the type that RawIOBase.fileno() returns.
        Overrides:
        fileno in class PyIOBase
        Returns:
        a file descriptor (as opaque object)
      • isatty

        public boolean isatty()
        Description copied from class: PyIOBase
        Is the stream known to be an interactive console? This relies on the ability of the underlying stream to know, which is not always possible.
        Overrides:
        isatty in class PyIOBase
        Returns:
        true if a console: false if not or we can't tell
      • flush

        public void flush()
        Description copied from class: PyIOBase
        Flush write buffers, or no-op for read-only and non-blocking streams. Irrespective of the concrete type of the i/o object, locally-buffered write data is written downstream. Whether the downstream in object is also flushed depends upon the specific type of this object.
        Overrides:
        flush in class PyIOBase
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class PyObject