fscanf和fprintf格式化读写

有时候我们使用fwrite时候写文件会比较混乱,这里使用fprintf写文件,fscanf读取文件,这样写出来的文件可读性就好很多了,下面简单的写一个小栗子玩玩

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

int main(int argc,char *argv[])
{
    FILE *fp;
    int i  = 0;
    fp = fopen("stu.txt","a+");
    if(fp == NULL)
    {
        perror("fopen  fail\n");
        exit(1);
    }

    char name[][20] = {"lilei","hanmeimei","bowen"};
    char cname[20];

    int age[] = {22,24,21};
    int uage;

    for (i = 0; i < 3; ++i)
    {
         fprintf(fp,"%s %d\n",name[i],age[i]); //把几条记录写到文件里
    }

    fseek(fp, 0,  SEEK_SET); //把写指针移到开始的地方

    for (i = 0; i < 3; ++i)
    {
        fscanf(fp,"%s %d",cname,&uage); //读取到变量里
        printf("name = %s , age = %d\n",cname,uage);
    }

    fclose(fp); //关闭文件
    return 0;
}

猜你喜欢

转载自blog.csdn.net/bin_zhang1/article/details/80909218