我正在使用 C 来解析一个大的平面文件并将相关行输出到一个输出文件中。输出文件应该是大约 70,000 行。
如果我在 gedit 中打开文件,它会完全按照预期显示,并具有正确的行数和行长。
但是,运行wc -l <file>
返回 13,156。也是如此grep -c "" <file>
。
tail <file>
返回我在 gedit 中看到的最后 10 行。head <file>
返回前 10 行。但是tail -n +8000 | head -n 1
,应该返回第 8,000 行,返回我在 gedit 中的第 34,804 行看到的文本。
如果我在文件中缺少换行符,我会期待这些结果。但是gedit似乎没有问题。此外,wc -L <file>
显示最大行长度的 ,按预期返回 142 个字节。正如预期的那样,该文件的大小略高于 9,000,000 字节。
如果wc -L <file>
=142,又wc -c <file>
=9046609,那么怎么可能=13156wc -l <file>
呢?
有谁知道我在写入这个文件时做错了什么?