On Sunday, 20 September 2015 at 20:17:37 UTC, Dandyvica wrote:

My file is made of 10 lines:


cat numbers.txt
1
2
3
4
5
6
7
8
9
10

╰─$ wc -l numbers.txt
CR/LF can be interpreted as line _dividers_, so if you have CR or CR/LF at the end of line 10, really here is line 11 which is empty. Remove end of line symbols at line 10 and you will have expected output:

before readln eof=false, line=<1>, after readln eof=false
before readln eof=false, line=<2>, after readln eof=false
before readln eof=false, line=<3>, after readln eof=false
before readln eof=false, line=<4>, after readln eof=false
before readln eof=false, line=<5>, after readln eof=false
before readln eof=false, line=<6>, after readln eof=false
before readln eof=false, line=<7>, after readln eof=false
before readln eof=false, line=<8>, after readln eof=false
before readln eof=false, line=<9>, after readln eof=false
before readln eof=false, line=<10>, after readln eof=true

p.s. it's good style to check input parameters, even for most simple cases.

Reply via email to