$darkmode
![]() |
Qore Programming Language Reference Manual 1.18.0
|
This class implements the InputStream interface for reading bytes from a file. More...
#include <QC_FileInputStream.dox.h>
Public Member Functions | |
constructor (string fileName, timeout timeout_ms=-1, *bool nonblocking_open) | |
Creates the FileInputStream by opening a file. More... | |
int | peek () |
Peeks the next byte available from the input stream; returns -1 if no more data available. More... | |
*binary | read (int limit) |
Reads bytes (up to a specified limit) from the input stream; returns NOTHING if there are no more bytes in the stream. More... | |
![]() | |
constructor () | |
Constructor. More... | |
abstract int | peek () |
Peeks the next byte available from the input stream; returns -1 if no more data available. More... | |
abstract *binary | read (int limit) |
Reads bytes (up to a specified limit) from the input stream; returns NOTHING if there are no more bytes in the stream. More... | |
![]() | |
constructor () | |
Throws an exception if called directly; this class can only be instantiated by builtin subclasses. More... | |
int | getThreadId () |
Get the currently assigned thread id or -1 if not assigned to any thread. | |
nothing | reassignThread () |
Reassigns current thread as thread used for stream manipulation. More... | |
nothing | unassignThread () |
Unassigns current thread as thread used for stream manipulation. More... | |
This class implements the InputStream interface for reading bytes from a file.
STREAM-THREAD-ERROR
to be thrown, unless the stream is handed off to another thread using the StreamBase::unassignThread() method in the thread that currently owns the stream, and the StreamBase::reassignThread() method in the new thread.Qore::FileInputStream::constructor | ( | string | fileName, |
timeout | timeout_ms = -1 , |
||
*bool | nonblocking_open | ||
) |
Creates the FileInputStream by opening a file.
fileName | the name of the file to open |
timeout_ms | a timeout period with a resolution of milliseconds (a relative date/time value; integer arguments will be assumed to be milliseconds); if not given or negative the operations will never time out |
nonblocking_open | if True, then the O_NONBLOCK flag will be set in the call to open() (2) |
FILE-OPEN2-ERROR | if the file cannot be opened (does not exist, permission error, etc) |
|
virtual |
Peeks the next byte available from the input stream; returns -1 if no more data available.
FILE-READ-ERROR | if an I/O error occurs |
FILE-READ-TIMEOUT-ERROR | if no byte could be read in the timeout specified in the constructor |
STREAM-THREAD-ERROR | this exception is thrown if this method is called from any thread other than the thread that created the object |
Implements Qore::InputStream.
Reads bytes (up to a specified limit) from the input stream; returns NOTHING if there are no more bytes in the stream.
limit | the maximum number of bytes to read |
FILE-READ-ERROR | if an I/O error occurs |
FILE-READ-TIMEOUT-ERROR | if no byte could be read in the timeout specified in the constructor |
INPUT-STREAM-ERROR | limit is not positive |
STREAM-THREAD-ERROR | this exception is thrown if this method is called from any thread other than the thread that created the object |
Implements Qore::InputStream.