繁体   English   中英

如何从C中的proc文件读取最后n个字节

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM