-2

我有一个 hello.txt 文件和一个指向该文件的指针 *i,我使用 c open(*i) 函数打开了该文件。我想使用 getpagesize(2) 读取文件的内容并进一步将该内容写入目标文件来获取文件的大小。所以得到我现在需要的文件大小,文件有多大,有多少内容要读取。

4

2 回答 2

0

getpagesize仅告诉您系统上的内存页有多大;它与文件无关。你应该看看stat电话;它可以满足您的需要。

如果在 上操作FILE *,您可以使用fseek(f, 0, SEEK_END)ftell(f)来计算文件的长度。

于 2012-09-24T04:40:31.363 回答
0

如果您使用open系统函数打开文件,则应查看该fstat函数以获取大小:

int fd = open(...);

struct stat st;
fstat(fd, &st);

printf("File size: %ld bytes\n", st.st_size);
于 2012-09-24T05:51:45.127 回答