On Thursday, 18 November 2021 at 23:09:28 UTC, H. S. Teoh wrote:
On Thu, Nov 18, 2021 at 10:20:48PM +0000, pascal111 via Digitalmars-d-learn wrote:
In next program that rewrites original written texts into new files, I see that it may need some additions or we can accept it like this because it's just a simple program that achieve its task and doesn't need any philosophical additions.

I assume there's a reason you're reading the input file by line instead of just copying it using larger fixed-size blocks? Perhaps you have in mind some kind of line-based filtering or processing eventually?

Because for copying a file, using a large, fixed-size block will work much faster. Not to mention the code will be simpler. For example:

        auto inputFile = File(inputFilename, "r");
        auto outputFile = File(outputFilename, "w");

        enum bufferSize = 8194;
inputFile.byChunk(bufferSize) // read input in blocks of 8194 bytes .copy(outputFile.lockingBinaryWriter); // copy each block into output file


T


When I compiled the code after adding yours, I found this error message:

"untitled20.d:24:8: error: no property 'copy' for type 'ByChunk'
24 | .copy(outputFile.lockingBinaryWriter); // copy each block into output file
      |        ^
"



Reply via email to