gpt4 book ai didi

从某个偏移量开始检查文件而不读取整个文件

转载 作者:太空宇宙 更新时间:2023-11-04 07:23:10 25 4
gpt4 key购买 nike

我想做的是打开一个文件(很大)并从某个字节点读取到一个偏移量。

在 c# 中,这可以通过以下方式完成:

File.ReadAllBytes(file).Skip(50).Take(10).ToArray();

问题在于它会读取整个文件,但由于我的文件可能很大,这也需要很长时间。有没有一种方法可以读取与此方法类似的文件的一部分,但无需读取整个文件?最好在c中

最佳答案

是的,使用 fseek()移动(“寻找”)到所需位置的标准库函数:

FILE *in = fopen("myfancyfile.dat", "rb");
if(fseek(in, 50, SEEK_SET) == 0)
{
char buf[10];
if(fread(buf, sizeof buf, 1, in) == 1)
{
/* got the data, process it here */
}
}
fclose(in);

关于从某个偏移量开始检查文件而不读取整个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20141462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com