Qore Programming Language Reference Manual  0.8.13.8
Qore::BufferedStreamReader Class Reference

This class defines a buffered stream reader for input streams. More...

Inheritance diagram for Qore::BufferedStreamReader:

Public Member Functions

 constructor (Qore::InputStream is, *string encoding, int bufsize=DefaultStreamBufferSize)
 Creates the BufferedStreamReader for reading data from the given InputStream. More...
 
- Public Member Functions inherited from Qore::StreamReader
 constructor (Qore::InputStream is, *string encoding)
 Creates the StreamReader for reading data from the given InputStream. More...
 
string getEncoding ()
 Returns the character encoding for the StreamReader. More...
 
*binary readBinary (int limit=-1)
 Reads binary data from the input stream up to a given limit. More...
 
*string readLine (*string eol, bool trim=True)
 Reads a text line from the input stream. More...
 
*string readString (int limit=-1)
 Reads a string from the input stream. More...
 
int readi1 ()
 Reads a 1-byte signed integer from the input stream. More...
 
int readi2 ()
 Reads a 2-byte (16 bit) signed integer from the input stream in binary big-endian format. More...
 
int readi2LSB ()
 Reads a 2-byte (16 bit) signed integer from the input stream in binary little-endian format. More...
 
int readi4 ()
 Reads a 4-byte (32 bit) signed integer from the input stream in binary big-endian format. More...
 
int readi4LSB ()
 Reads a 4-byte (32 bit) signed integer from the input stream in binary little-endian format. More...
 
int readi8 ()
 Reads a 8-byte (64 bit) signed integer from the input stream in binary big-endian format. More...
 
int readi8LSB ()
 Reads a 8-byte (64 bit) signed integer from the input stream in binary little-endian format. More...
 
int readu1 ()
 Reads a 1-byte unsigned integer from the input stream. More...
 
int readu2 ()
 Reads a 2-byte (16 bit) unsigned integer from the input stream in binary big-endian format. More...
 
int readu2LSB ()
 Reads a 2-byte (16 bit) unsigned integer from the input stream in binary little-endian format. More...
 
int readu4 ()
 Reads a 4-byte (32 bit) unsigned integer from the input stream in binary big-endian format. More...
 
int readu4LSB ()
 Reads a 4-byte (32 bit) unsigned integer from the input stream in binary little-endian format. More...
 

Detailed Description

This class defines a buffered stream reader for input streams.

Since
Qore 0.8.13
Example: BufferedStreamReader basic usage
FileInputStream is("data.txt");
BufferedStreamReader sr(is, "UTF-8");
*string line = sr.readLine();
*binary b = sr.readBinary(256);
int i = sr.readi4();
See also
Qore::InputStream

Member Function Documentation

◆ constructor()

Qore::BufferedStreamReader::constructor ( Qore::InputStream  is,
*string  encoding,
int  bufsize = DefaultStreamBufferSize 
)

Creates the BufferedStreamReader for reading data from the given InputStream.

Parameters
isthe InputStream for reading data
encodingthe character encoding of the data from the InputStream; if not present, the default character encoding is assumed
bufsizethe size of the internal buffer in bytes; must be a positive integer
Exceptions
STREAM-BUFFER-ERRORan invalid stream buffer size was specified; the buffer size must be a positive integer