class codecs.StreamReader(stream, errors='strict')
Constructor for a StreamReader
instance.
All stream readers must provide this constructor interface. They are free to add additional keyword arguments, but only the ones defined here are used by the Python codec registry.
The stream argument must be a file-like object open for reading text or binary data, as appropriate for the specific codec.
The StreamReader
may implement different error handling schemes by providing the errors keyword argument. See Error Handlers for the standard error handlers the underlying stream codec may support.
The errors argument will be assigned to an attribute of the same name. Assigning to this attribute makes it possible to switch between different error handling strategies during the lifetime of the StreamReader
object.
The set of allowed values for the errors argument can be extended with register_error()
.
-
read([size[, chars[, firstline]]])
-
Decodes data from the stream and returns the resulting object.
The chars argument indicates the number of decoded code points or bytes to return. The
read()
method will never return more data than requested, but it might return less, if there is not enough available.The size argument indicates the approximate maximum number of encoded bytes or code points to read for decoding. The decoder can modify this setting as appropriate. The default value -1 indicates to read and decode as much as possible. This parameter is intended to prevent having to decode huge files in one step.
The firstline flag indicates that it would be sufficient to only return the first line, if there are decoding errors on later lines.
The method should use a greedy read strategy meaning that it should read as much data as is allowed within the definition of the encoding and the given size, e.g. if optional encoding endings or state markers are available on the stream, these should be read too.
-
readline([size[, keepends]])
-
Read one line from the input stream and return the decoded data.
size, if given, is passed as size argument to the stream’s
read()
method.If keepends is false line-endings will be stripped from the lines returned.
-
readlines([sizehint[, keepends]])
-
Read all lines available on the input stream and return them as a list of lines.
Line-endings are implemented using the codec’s decoder method and are included in the list entries if keepends is true.
sizehint, if given, is passed as the size argument to the stream’s
read()
method.
-
reset()
-
Resets the codec buffers used for keeping state.
Note that no stream repositioning should take place. This method is primarily intended to be able to recover from decoding errors.
Please login to continue.