码迷,mamicode.com
首页 > 编程语言 > 详细

关于C语言中使用fread()读取整个文件的心得

时间:2014-07-31 21:20:08      阅读:393      评论:0      收藏:0      [点我收藏+]

标签:fread()   fwrite   fseek()   ftell()   rewind()   

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    struct testF{
        int a;
        int b;
        float c;
    };
    
    struct testF struct1[5]={{5, 4, 5.4}, {4, 3, 4.3}, {3, 2, 3.2}, {2, 1, 2.1}, {1, 0, 1.01}};
    FILE *fpW;
    if((fpW=fopen("./testFile", "wb")) == NULL){
        printf("Open file faied, yoou will exit this program.\n");
        exit(1);
    }
    int i;
    for(i = 0; i< 5; i++){
        fwrite(&struct1[i], sizeof(struct1[i], 1, fpW);
    }
    fclose(fpW);
    
    
    FILE *fpR;
    struct testF struct2;
    fseek(fpR, 0, SEEK_END); //将指针定在文件结尾处
    long fSize = ftell(fpR); //返回文件的大小
    rewind(fpR); //将指针重新定位在文件开始处
    while(1){
        fread(&struct2, sizeof(struct2), 1, fpR);
        printf("%d %d %f", struct2.a, struct2.b, struct2.c);
        if(ftell(fpR) == fSize) //判断是否已读到文件结尾处
            break; 
    }
    fclose(fpR);
    return 0;
}


关于C语言中使用fread()读取整个文件的心得,布布扣,bubuko.com

关于C语言中使用fread()读取整个文件的心得

标签:fread()   fwrite   fseek()   ftell()   rewind()   

原文地址:http://dearleo.blog.51cto.com/6718690/1533250

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!