Here's a little snippet of code that interfaces with Scintilla (it works btw.):

File file = File("test.txt", "r");
foreach (ubyte[] buf; file.byChunk(4096))
{
        sendEditor(SCI_ADDTEXT, buf.length, (cast(char[])buf).idup);
}

The cast looks ugly, but I *have* to send a copy. Am I doing it right, or can I 
make this a bit simpler? Otherwise I can use file.byLine, but I think this 
would be much slower (unless D reads the entire contents at once into memory, 
but I think it does not).

Actually, I shouldn't even complain. I can't believe how easy it is to open a 
file, use buffers and send it all to a C interface. This is a 4-liner, the C 
equivalent spans 20+ lines. Ha!

Reply via email to