黑马程序员-C语言文件操作相关函数

格式:一般操作一个文件分为以下5个部分
1.导入<stdio.h>头文件、定义文件指针
     FILE *fp = NULL;  //FILE是一个别名必须全大写
2 .使用fopen打开一个文件,打开方式有 r、w、a、r+、w+、a+、t、b 若打开成功则返回文件的首地址、若失败则返回NULL 
     fp = fopen("test.txt","r");
        说明:r:只读方式打开一个文件,当文件不存在时返回NULL
                  w:只写方式打开一个文件,当文件存在时,将该文件删除重新创建该文件;当文件不存在
                        时,创建该文件
                  a:追加方式打开一个文件,当文件存在时,直接在原文件的结尾追加新的内容,当文件不存
                        在时创建新的文件
                  r+:读写方式打开一个文件,其他和r一样
                  w+:读写方式打开一个文件,其他和w一样
                  a+:读写方式打开一个文件,其他和a一样
                  t:    以文本文件打开一个文件
                  b:   以二进制文件打开一个文件
3 .判断文件是否打开成功
    if(fp != null){
4.对文件进行操作: EOF是文件结束的标志
          字符操作函数:fgetc(变量,文件指针)    fputc(变量,文件指针)
            范例:ch = fgetc(fp);    fputc(ch, fp);
        字 符串操作函数:fgets(变量,读取字节数,文件指针)    fputs(变量,文件指针)
              注意:1)fgets读取的时候,当文件内容读取完毕后,会给字符加上结束符\0
                       2)fgets读取的时候,遇到\n或者EOF,读取结束
                       3)fputs在函数有一个返回值,执行后会返回本次写入的字符串的长度
            范例:count = fputs(str, fp);    fgets(str2, sizeof(str2), fp);
          块操作函数:fread(地址,块大小,块数,文件指针)    fwrite(地址,块大小,块数,文件指针)
             说明: 块大小即字节数,块数即每次读\写块大小的个数
             范例:fwrite(str, strlen(str), 1, fp);    fread(ch, sizeof(ch), 1, fp);
          格式化读写函数:fscanf(文件指针,格式控制符,地址...)  fprintf(文件指针,格式控制符,  变量...)            
               范例:fprintf(fp,"%d#%d;",a,b);    fscanf(fp, "%d#%d;",&m,&n);
        文件指针操作函数:
          将文件指针置文件首地址:rewind(文件指针);
          随机存取函数:fseek(文件指针,移动字节数,文件指针的位置)                                           
                                   移动参考可以取3个值:
                                                                        文件首地址:SEEK_SET ==0
                                                                        文件当前地址:SEEK_CUR   ==1 
                                                                        文件尾地址:SEEK_END ==2
                范例:fseek(fp, sizeof(struct Student)*2, SEEK_SET);

5.使用fclose(文件指针)关闭文件
fcolse(fp);//文件操作最后必须关闭文件指针,否则可能会造成文件无法正常写入与读出
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值