我想使用 C 读取文本文件的内容,以便在完成所有操作后拥有一个字符串数组,其中第 n 个字符串表示文本文件的第 n 行。文件的行可以任意长。
完成此任务的优雅方式是什么?我知道一些巧妙的技巧可以将文本文件直接读入一个大小合适的缓冲区,但将其分解成行会使它变得更加棘手(至少据我所知)。
非常感谢!
最佳答案
将其分解成行意味着解析文本并将所有 EOL(EOL 我的意思是\n 和\r)字符替换为 0。 通过这种方式,您实际上可以重用缓冲区并将每行的开头存储到一个单独的 char * 数组中(全部通过仅执行 2 遍)。
通过这种方式,您可以对整个文件大小进行一次读取 + 2 次解析,这可能会提高性能。
关于c - 将文本文件读入 C 中的行数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1800295/