读写TXT文件笔记1

一、文件指针

文件指针是一个指针但它并不是指向文件,文件指针在程序中用来标识(代表)一个文件,在打开文件的时候得到文件指针,文件指针就用来代表我们所打开的文件。

定义文件指针:

FILE * 指针变量标识符;

FILE为大写,需要包含<stdio.h>。FILE是系统使用typedef定义出来的有关文件信息的一种结构体类型,结构体中含有文件名、文件状态和文件当前位置等信息。

在缓冲文件系统中,每个被使用的文件都要在内训中开辟一块FILE类型的区域,存放与操作文件相关的信息。

※※注意:C语言中有三个特殊的文件指针无需定义,可以直接使用。

stdin:标准输入,默认为当前终端(键盘)

stdout:标准输出,默认为当前终端(屏幕)

stderr:标准错误输出设备文件,默认为当前终端(屏幕)

总结:文件指针是一个FILE类型的结构体指针,用来标识一个文件。

二、fopen和fclose函数

打开文件fopen

函数声明:

FILE *fopen(const char *path,const char *mode)

函数说明:

fopen函数的功能是打开一个已经存在的文件,并返回这个文件的文件指针,或者创建一个文件,并打开此文件,然后返回文件的文件指针。

函数参数:

参数1:打开的文件的路径

① 绝对路径,从根目录开始的路径名称

②相对路径

参数2:文件打开的方式(只读,只写,可读可写)。

读写权限: r   w   a   +

r:以只读方式打开文件,文件不存在返回NULL,文件存在,且打开文件成功,返回文件指针。

例:

        FILE *fp;

        fp=fopen("test.txt","r");

w:以只写方式打开文件,若文件不存在,则以指定文件名创建此文件,并且打开文件。若文件存在,先清空文件内容,打开文件,然后进行写的操作。若文件打不开(比如某文件只读),则返回NULL。

例:

        FILE *fp;

        fp=fopen(“test.txt","w");

a:以追加方式打开文件,若文件不存在,以制定文件名创建此项目(同w)。若文件存在,在文件的结尾处进行写的操作。

说明:

        如果不加a的话,打开文件的时候读写位置在文件的开始,对文件进行读写时,从文件开始读写。如果加a,打开已经存在的文件,读写位置在文件末尾。

带“+”都是可读可写的文件。

返回值:

成功:打开的文件对应的文件指针。

失败:返回NULL。

关闭文件fclose

函数的头文件:#include<stdio.h>

函数的声明:

int fclose(FILE *fp);

函数的说明:

关闭fp所代表的文件,关闭文件后就不能再对文件进行读写等操作了。

返回值:

成功返回0,失败返回非0。可通过返回值判断文件是否关闭。

例:

#include <stdio.h>

int main()
{
    FILE* fp1,*fp2;
    int ret;
    fp1=fopen(".\\test.txt","r+"); 
    if(fp1==NULL)
    {
        printf("fopen 失败\n");
        perror("fp1");
        return 0;
    }
    printf("打开文件 test.txt成功\n");
    ret=fclose(fp1);
    if(ret==0)printf("关闭文件成功\n");
    else
    {
        printf("关闭文件失败\n");
    }
    return 0;
}

第一次写博客,若是有什么错误或需要改进的地方,希望大家指出。
 

  

猜你喜欢

转载自blog.csdn.net/qq_61139806/article/details/124055162
今日推荐