C.15:文件处理(fopen·fclose·fputc·fgetc·fputs·fgets·fprintf·fscanf·sprintf·sscantf·fwrite·fread)

1. 文件:磁盘上的东西都叫文件

1.文件分为:程序文件、数据文件
                注:1. 程序文件有.c,.obj,.exe 3种
                    2. 数据文件:程序运行时读写的数据叫数据文件

2.文件名:文件路径+文件名主干+文件后缀
                注:1.例:c:\code\test.txt 中c:\code\为文件路径,test为文件名主干,.txt为文件后缀              

2. 文件的打开和关闭

1.文件打开关闭格式:
                        fopen 打开文件
                        具体操作
                        fclose 关闭文件

2.文件指针:存放文件信息区(FILE结构体)地址的指针
                注:任何一个文件在对它进行操作时会在内存建立一个文件信息区,即FILE结构体,里面存放了这个文件的信息,通过程序修改这个FILE结构体,(后面的事情)再由操作系统修改这个文件达成需求

3. fopen
(打开成功返回文件信息区起始地址,否则返回NULL)fopen(此处填字符串,此处填读还是写)

4. fclose
(关闭成功返回0,否则返回EOF)fclose(文件信息区起始地址)

3. 文件的顺序读写

1. fputc:往文件信息区写入字符--适用于所有输出流
(写入字符成功,返回这个字符的int值,否则返回EOF)fputc(此处填想输入的字符,输出流)//当输出流 = 文件信息区起始地址时等于往文件信息区写入字符

2. fgetc:从文件信息区读取字符--适用于所有输入流
(读取字符成功,返回这个字符的int值,否则返回EOF)fgetc(输入流)//当输入流 = 文件信息区起始地址时等于从文件信息区读取字符

3. fputs:往文件信息区写入一行字符串 --适用于所有输出流
(写入成功,返回一个非负值,否则返回EOF)fputs(此处填想输入的字符串,输出流)//当输出流 = 文件信息区起始地址时时等于往文件信息区写入字符串

4. fgets:从文件信息区读取一行字符串 --适用于所有输入流
(读成功,返回存储的首地址,读失败,返回NULL)fgets(存储的首地址,读几个字符,输入流)//当输入流 = 文件信息区起始地址时等于从文件信息区读取字符串

            注:读几个字符:如果你想读取n个字符,任何时候,系统实际读取n-1个字符,留一个字符空间给‘\n’

5. fwriter(从外界获取内容-要外界地址,外界地址对应的-结构体大小,写入几个结构体,输出流)--二进制方式写,与wb配套使用

5. fread(存内容-要存内容的地方的地址,存内容的地方的地址对应的-结构体大小,读几个结构体,输入流)--二进制方式读,与rb配套使用

4. 流:以下三种都是流,都属于FILE*结构,适用于fputc,fgetc,fputs,fgets.

                stdin:标准输入流 ->键盘

                stdout:标准输出流->屏幕

                stderr:标准错误流->屏幕

5. fprintf

(略)fprintf(输出流,printf书写格式)//输出流 = 文件信息区地址时等于往文件信息区写入东西
    注:1. fprintf 适用于所有输出流
        2. “printf书写格式”指printf()的()内的格式

(略)fscanf(输入流,scanf书写格式)//输入流 = 文件信息区地址时等于从文件信息区获取东西
    注:1. fscanf 适用于所有输入流
        2. “scanf书写格式”指scanf()的()内的格式

(略)sprintf(向外界输出-要外界字符地址,printf书写格式)//作用是把数据都转成字符了

(略)sscanf(从外界获取-要外界字符地址,printf书写格式)//作用是把字符数据转成各个类型

你可能感兴趣的:(c语言,c++,开发语言)