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

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

Inheritance diagram for Qore::BufferedStreamReader:

Public Member Methods

 constructor (Qore::InputStream is, *string encoding, int bufsize=DefaultStreamBufferSize)
 Creates the BufferedStreamReader for reading data from the given InputStream. More...
 
- Public Member Methods 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...
 
InputStream getInputStream ()
 Returns the InputStream 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