文件io-fwrite、fread

1、fwrite以二进制形式写数据到文件中去

#include <stdio.h>

int fwrite (const void *buffer,size_t size,size_t count, FILE *stream);

fwrite()函数从数组buffer(缓冲区)中, 写count个大小为size(大小)的对象到stream(流)指定的流. 返回值是已写的对象的数量.

#include <stdio.h>

int main()
{
    char name[20];
    int age;

    puts("please input your name and age:");
    gets(name);
    scanf("%d",&age);
    while(getchar() != '\n');

    FILE *file;
    file = fopen("E:\\C\\vscode\\C\\file_io\\user.txt", "wb");

    if(!file){
        puts("open fail.");
        return -1;
    }

    fwrite(name,sizeof(char),sizeof(name),file);//读name写到file
    fwrite(&age,sizeof(int),1,file);//读age,写到file

    fclose(file);

}

将输入的内容,以二进制形式,存储在了文件中

2、fread以二进制形式读文件中数据

语法:

  #include <stdio.h>
  int fread( void *buffer, size_t size, size_t num, FILE *stream );

函数fread()读取[num]个对象(每个对象大小为size(大小)指定的字节数),并把它们替换到由buffer(缓冲区)指定的数组. 数据来自给出的输入流. 函数的返回值是读取的内容数量...

-----------------------------------------------------------------------------------------------------------------------------

将权限改成了rb,读取二进制文件

使用fread()函数

将文件中的数据,保存到了变量和数组中。通过标准输出打印出来

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>

int main()
{
    char name[20];
    int age;

    //puts("please input your name and age:");
   // gets(name);
   // scanf("%d", &age);
   // while (getchar() != '\n');

    FILE* file;
    //file = fopen("user.txt", "wb");
    file = fopen("user.txt", "rb");

    if (!file) {
        puts("open fail.");
        return -1;
    }

    fread(name, sizeof(char), sizeof(name), file);
    fread(&age, sizeof(int), 1, file);
    puts(name);
    printf("age=%d", age);

    fclose(file);

}
nike jack
age=28
E:\C\visualStudio\demo\fread_io\x64\Debug\fread_io.exe (进程 21800)已退出,代码为 0。
按任意键关闭此窗口. . .

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值