The format string. When passed as a compile-time argument, the string will be statically checked against the argument types passed.
Items to be read.
// test.d void main() { import std.stdio; auto f = File("input"); foreach (_; 0 .. 3) { int a; f.readf!" %d"(a); writeln(++a); } }
% echo "1 2 3" > input % rdmd test.d 2 3 4
1 static import std.file; 2 3 auto deleteme = std.file.deleteme(); 4 std.file.write(deleteme, "hello\nworld\ntrue\nfalse\n"); 5 scope(exit) std.file.remove(deleteme); 6 string s; 7 auto f = File(deleteme); 8 f.readf!"%s\n"(s); 9 assert(s == "hello", "["~s~"]"); 10 f.readf("%s\n", s); 11 assert(s == "world", "["~s~"]"); 12 13 bool b1, b2; 14 f.readf("%s\n%s\n", b1, b2); 15 assert(b1 == true && b2 == false);
Reads formatted _data from the file using std._format.formattedRead.