我做过一项研究,在很多地方都提到使用fgets()。好的,但我需要设置一个读取的字节数限制,我无法确定我的行不会超过我设置的限制。我是对的还有另一种解决方案吗?
我唯一的另一个想法是使用fgetc(),但必须有更好的解决方案......
答案 0 :(得分:7)
来自manual:
当读取
length - 1
字节或换行符(包含在返回值中)或EOF(以先到者为准)时,读取结束。 如果没有指定长度,它将继续从流中读取,直到它到达行尾。
答案 1 :(得分:0)
在大文件上使用fgetc函数绝对不是一个好主意 a)会慢一些 b)您应该手动处理所有内容,这会导致错误(例如,不同的行结尾)
至于原始任务,有时值得将您的输入转换为另一种格式,这对于快速阅读是有益的。例如,如果可能的话,拆分超长行。