fgets() 和 fread() - 有什么区别?

2022-01-07 00:00:00 smtp stream php fread fgets

我了解 fgets() 之间的区别 和 fgetss() 但我不明白 之间的区别fgets()fread(),有人可以澄清一下这个主题吗?哪个更快?谢谢!

I understand the differences between fgets() and fgetss() but I don't get the difference between fgets() and fread(), can someone please clarify this subject? Which one is faster? Thanks!

推荐答案

fgets 读取一行——即它将在换行符处停止.

fgets reads a line -- i.e. it will stop at a newline.

fread 读取原始数据——它将在指定的(或默认)字节数后停止,独立于可能存在或不存在的任何换行符.

fread reads raw data -- it will stop after a specified (or default) number of bytes, independently of any newline that might or might not be present.


速度不是使用一个而不是另一个的理由,因为这两个功能只是不做同样的事情:


Speed is not a reason to use one over the other, as those two functions just don't do the same thing :

  • 如果您想从文本文件中读取一行,请使用 fgets
  • 如果您想从文件中读取一些数据(不一定是一行),请使用fread.

相关文章