c++ - 高效读取csv文件的最后一行

标签 c++ c file csv file-io

是否有有效的 C 或 C++ 方法来读取 CSV 文件的最后一行?天真的方法是读入整个文件然后读到最后。有没有更快的方法可以完成此操作(特别是如果 CSV 文件很大)?

最佳答案

你可以做的是猜测行的长度,然后在文件末尾之前跳转 2-3 行并读取剩余的行。你读到的最后一行就是最后一行,只要你之前至少读过一行(否则,你仍然会以更大的偏移量重新开始)

我在 this answer 中发布了一些用于执行类似操作(读取最后 N 行)的示例代码(在 PHP 中,但作为说明)

有关各种语言的实现,请参阅

关于c++ - 高效读取csv文件的最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16762400/

相关文章:

c++ - 为什么 C++ 中的 vector 不会自动调整大小

c - unix 中的信号/警报问题

java - 整理文件类

c# - 如何制作 "Read only"文件?

PHP Codeigniter 错误无法打开流 : Permission denied

c++ - 评估顺序 >> 和 [++]

c++ - 如何强制指针在每次启动时不保持它们的值和顺序?

C++: std::move with rvalue reference 不 move 内容

从十六进制数据创建位图图像

c++ - 为什么 "SHOW PROCESSLIST"不给 Host IP?