On Thursday, 17 May 2018 at 20:08:09 UTC, Dennis wrote:
```
auto inputStream = (args.length < 2 || args[1] == "-") ? stdin : args[1].File;
        auto outputFile = new File("output.txt");
foreach (line; inputStream.byLine(KeepTerminator.yes)) outputFile.write(line);
```

Do it old school?
---
int line;
auto outputFile = File("output.txt", "wb");
foreach (chunk; inputStream.byChunk(4<<10))
{
  auto rem=chunk;
  while(rem!=null)
  {
    auto i=rem.countUntil(10);
    auto len=i+1;
    if(i<0)len=rem.length; else line++;
    outputFile.rawWrite(rem[0..len]);
    rem=rem[len..$];
  }
}
---

Reply via email to