File.rawRead

Calls fread for the file handle. The number of items to read and the size of each item is inferred from the size and type of the input array, respectively.

struct File
T[]
rawRead
(
T
)
(
T[] buffer
)

Return Value

Type: T[]

The slice of buffer containing the data that was actually read. This will be shorter than buffer if EOF was reached before the buffer could be filled.

Throws

Exception if buffer is empty. ErrnoException if the file is not opened or the call to fread fails.

rawRead always reads in binary mode on Windows.

Examples

static import std.file;

auto testFile = std.file.deleteme();
std.file.write(testFile, "\r\n\n\r\n");
scope(exit) std.file.remove(testFile);

auto f = File(testFile, "r");
auto buf = f.rawRead(new char[5]);
f.close();
assert(buf == "\r\n\n\r\n");

Meta

Suggestion Box / Bug Report