vibe.d beta banner
get vibe.d

Asynchronous I/O that doesn’t get in your way, written in D

Interface FileStream

Accesses the contents of a file as a stream.

interface FileStream
  : RandomAccessStream ;


isOpen[get] boolDetermines if the file stream is still open
path[get] PathThe path of the file.
dataAvailableForRead[get] boolQueries if there is data available for immediate, non-blocking read.
empty[get] boolReturns true iff the end of the input stream has been reached.
leastSize[get] ulongReturns the maximum number of bytes that are known to remain in this stream until the end is reached. After leastSize() bytes have been read, the stream will either have reached EOS and empty() returns true, or leastSize() returns again a number > 0.
readable[get] boolDetermines if this stream is readable.
size[get] ulongReturns the total size of the file.
writable[get] boolDetermines if this stream is writable.


close () Closes the file handle.
finalize () Flushes and finalizes the stream.
flush () Flushes the stream and makes sure that all data is being written to the output device.
peek () Returns a temporary reference to the data that is currently buffered.
read (dst) Fills the preallocated array 'bytes' with data from the stream.
seek (offset) Seeks to a specific position in the file if supported by the stream.
tell () Returns the current offset of the file pointer
write (bytes) Writes an array of bytes to the stream.
write (bytes) Writes an array of chars to the stream.
write (stream, nbytes) Pipes an InputStream directly into this OutputStream.
writeDefault (stream, nbytes)

Sönke Ludwig


© 2012-2014 RejectedSoftware e.K.


Subject to the terms of the MIT license, as written in the included LICENSE.txt file.