BufferedOutputStream

Buffered output stream implements gio.filter_output_stream.FilterOutputStream and provides for buffered writes.

By default, gio.buffered_output_stream.BufferedOutputStream's buffer size is set at 4 kilobytes.

To create a buffered output stream, use gio.buffered_output_stream.BufferedOutputStream.new_, or gio.buffered_output_stream.BufferedOutputStream.newSized to specify the buffer's size at construction.

To get the size of a buffer within a buffered input stream, use gio.buffered_output_stream.BufferedOutputStream.getBufferSize. To change the size of a buffered output stream's buffer, use gio.buffered_output_stream.BufferedOutputStream.setBufferSize. Note that the buffer's size cannot be reduced below the size of the data within the buffer.

Constructors

this
this(gio.output_stream.OutputStream baseStream)

Creates a new buffered output stream for a base stream.

Members

Functions

getAutoGrow
bool getAutoGrow()

Checks if the buffer automatically grows as data is added.

getBufferSize
size_t getBufferSize()

Gets the size of the buffer in the stream.

setAutoGrow
void setAutoGrow(bool autoGrow)

Sets whether or not the stream's buffer should automatically grow. If auto_grow is true, then each write will just make the buffer larger, and you must manually flush the buffer to actually write out the data to the underlying stream.

setBufferSize
void setBufferSize(size_t size)

Sets the size of the internal buffer to size.

Static functions

newSized
gio.buffered_output_stream.BufferedOutputStream newSized(gio.output_stream.OutputStream baseStream, size_t size)

Creates a new buffered output stream with a given buffer size.

Mixed In Members

From mixin SeekableT!()

canSeek
bool canSeek()

Tests if the stream supports the #GSeekableIface.

canTruncate
bool canTruncate()

Tests if the length of the stream can be adjusted with gio.seekable.Seekable.truncate.

seek
bool seek(long offset, glib.types.SeekType type, gio.cancellable.Cancellable cancellable)

Seeks in the stream by the given offset, modified by type.

tell
long tell()

Tells the current position within the stream.

truncate
bool truncate(long offset, gio.cancellable.Cancellable cancellable)

Sets the length of the stream to offset. If the stream was previously larger than offset, the extra data is discarded. If the stream was previously shorter than offset, it is extended with NUL ('\0') bytes.

Inherited Members

From FilterOutputStream

getBaseStream
gio.output_stream.OutputStream getBaseStream()

Gets the base stream for the filter stream.

getCloseBaseStream
bool getCloseBaseStream()

Returns whether the base stream will be closed when stream is closed.

setCloseBaseStream
void setCloseBaseStream(bool closeBase)

Sets whether the base stream will be closed when stream is closed.

From Seekable

canSeek
bool canSeek()

Tests if the stream supports the #GSeekableIface.

canTruncate
bool canTruncate()

Tests if the length of the stream can be adjusted with gio.seekable.Seekable.truncate.

seek
bool seek(long offset, glib.types.SeekType type, gio.cancellable.Cancellable cancellable)

Seeks in the stream by the given offset, modified by type.

tell
long tell()

Tells the current position within the stream.

truncate
bool truncate(long offset, gio.cancellable.Cancellable cancellable)

Sets the length of the stream to offset. If the stream was previously larger than offset, the extra data is discarded. If the stream was previously shorter than offset, it is extended with NUL ('\0') bytes.