我正在使用fgets从简单文件(如txt文件)读取文本,但是我需要能够跳回到前面的行。无论如何使用fgets做到这一点?或者我应该将文本存储在某种数组/结构中?
答案 0 :(得分:2)
答案 1 :(得分:1)
您可以使用fseek()
和朋友(http://linux.die.net/man/3/fseek)来解决您的问题。
但是,将“fseek”函数与文本文件混合(特别是如果您正在读取和写入相同的流)可能会因换行的库转换而导致问题。
如果你对内存的关注度不是很高,我会选择保存前一行的信息。
更好的是,如果可能的话,请检查您的算法/数据结构,以便您不需要返回。