Package org.python.core.io
Class IOBase
- java.lang.Object
-
- org.python.core.io.IOBase
-
- Direct Known Subclasses:
BufferedIOBase
,RawIOBase
,TextIOBase
public abstract class IOBase extends java.lang.Object
Base class for all I/O classes. IOBase and its descendents in org.python.core.io are based off Python 3's new io module (PEP 3116). This does not define read(), readinto() and write(), nor readline() and friends, since their signatures vary per layer.- Author:
- Philip Jenvey
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_BUFFER_SIZE
The default size of generic buffers
-
Constructor Summary
Constructors Constructor Description IOBase()
-
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
checkClosed()
Raise a ValueError if the file is closed.void
checkReadable()
Raise an IOError if the file is not readable.void
checkWritable()
Raise an IOError if the file is not writable.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.boolean
isatty()
Returns whether this is an 'interactive' stream.boolean
readable()
Return whether this file was opened for reading.long
seek(long pos)
Seek to byte offset pos relative to the start of the stream.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 size)
Truncate file to size in bytes.boolean
writable()
Return whether this file was opened for writing.
-
-
-
Field Detail
-
DEFAULT_BUFFER_SIZE
public static final int DEFAULT_BUFFER_SIZE
The default size of generic buffers- See Also:
- Constant Field Values
-
-
Method Detail
-
seek
public long seek(long pos)
Seek to byte offset pos relative to the start of the stream. Returns the new absolute position.- Parameters:
pos
- a long position value- Returns:
- a long position value seeked to
-
seek
public 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. Returns the new absolute position.- Parameters:
pos
- a long position valuewhence
- an int whence value- Returns:
- a long position value seeked to
-
tell
public long tell()
Return the current stream position.- Returns:
- a long position value
-
truncate
public long truncate(long size)
Truncate file to size in bytes. Returns the new size.- Parameters:
size
- a long size to truncate to- Returns:
- a long size value the file was truncated to
-
flush
public void flush()
Flushes write buffers, if applicable. This is a no-op for read-only and non-blocking streams.
-
close
public void close()
Flushes and closes the IO object. This must be idempotent. It should also set a flag for the 'closed' property (see below) to test.
-
fileno
public RawIOBase fileno()
Returns underlying file descriptor if one exists. Raises IOError if the IO object does not use a file descriptor.- Returns:
- a file descriptor
-
isatty
public boolean isatty()
Returns whether this is an 'interactive' stream. Returns False if we don't know.- Returns:
- a boolean, true if an 'interactive' stream
-
readable
public boolean readable()
Return whether this file was opened for reading.- Returns:
- true if the file was opened for reading
-
checkReadable
public void checkReadable()
Raise an IOError if the file is not readable.
-
writable
public boolean writable()
Return whether this file was opened for writing.- Returns:
- true if the file was opened for writing
-
checkWritable
public void checkWritable()
Raise an IOError if the file is not writable.
-
closed
public boolean closed()
Return whether this file has been closed.- Returns:
- true if the file has been closed
-
checkClosed
public void checkClosed()
Raise a ValueError if the file is closed.
-
asOutputStream
public java.io.OutputStream asOutputStream()
Coerce this into an OutputStream if possible, or return null.
-
asInputStream
public java.io.InputStream asInputStream()
Coerce this into an InputStream if possible, or return null.
-
-