[英]how to read last n bytes from a proc file in C
我想读取proc文件/ proc // status的最后n个字节。
在常规文件上,我可以从文件末尾查找:
fseek(proc_file, -BUF_SIZE, SEEK_END);
但是由于proc文件的大小为零,因此无法正常工作。
关于如何从头开始阅读有什么建议吗?
我一定要避免循环到最后。
状态文件很小。 只需读取前10000个字节:
int fileLen = fread( statusFile, buffer, 10000 );
fread将返回文件中的字节数以及文件的内容。 然后,您可以检查文件的末尾。
仅读取最后几个字节没有优势。 文件I / O系统是经过缓冲的,因此即使要求几个字节也将导致较低的层始终读取几k。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.