C文本读写

本文介绍了如何使用C语言的FILE指针进行二进制文件操作,包括fwrite和fwrite的用法,并通过实际例子演示如何将教师结构体以二进制形式写入和读取文件,以及如何用fprintf和fscanf进行文本格式的文件操作转换。
摘要由CSDN通过智能技术生成

文件IO:
    FILE *fopen(const char *path, const char *mode);
    功能:打开或创建文件
    path:文件的路径
    mode:打开模式
        r       以只读权限打开文件,如果文件不存在则打开失败
        r+      在r的基础上增加写权限
        w       以只写权限打开文件,如果文件不存在则新建,如果文件存在则清空
        w+      在w的基础上增加读权限
        a       以只写权限打开文件,如果文件不存在则新建,如果文件存在则不清空,新写入的数据在文件的末尾
        a+      在a的基础上增加读权限 

        以上方式以文本形式操作文件,在它们基础上加b表示以二进制方式操作文件

    返回值:结构指针,也称为文件指针,不需要关心它的成员,只需要知道它是操作文件的凭证,如果值是NULL表示文件操作失败

二进制方式读写文件:
    size_t fwrite(const void *ptr,size_t size,size_t nmemb,FILE *stream);
    功能:把内存中的数据写入到文件中
    ptr:内存首地址
    size:一次写入多少个字节
    nmemb:写入多少次
    stream:文件指针,fopen的返回值
    返回值:成功写入的次数

    练习1:定义一个教师结构体变量并初始化,以二进制形式写入到文件中

    size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
    功能:从文件中读取数据到内存中
    ptr:存储从文件中读取的数据内存首地址
    size:一次读取的字节数
    nmemb:读取多少次
    stream:文件指针,fopen的返回值
    返回值:成功读取到的次数

    练习2:从文件中读取数据到一个教师结构体变量中,并显示

文本方式读写文件:
    int fprintf(FILE *stream, const char *format, ...);
    功能:以文本形式写入数据到文件中
    stream:要写入的文件指针
    format:占位符和提示信息
    ... :变量名列表
    返回值:成功写入的字节数

    int fscanf(FILE *stream, const char *format, ...);
    功能:从文件中读取数据到变量中
    stream:要读取的文件指针
    format:占位符
    ...:变量地址列表
    返回值:成功读取到的变量个数

    int fclose(FILE *fp);
    功能:关闭文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值