到目前为止,使用C程序的操作是在没有存储在任何地方的提示/终端上完成的。但是在软件行业,大多数程序是编写来存储从程序中获取的信息的。一种这样的方式是将获取的信息存储在文件中。可以对文件执行的不同操作是:
1.创建一个新文件(属性为“ a”或“ a +”或“ w”或“ w ++”的fopen)
2.打开一个现有文件(fopen)
3.从文件读取(fscanf或fgets)
4.写入文件(fprintf或fputs)
5.移至文件中的特定位置(fseek,rewind)
6.关闭文件(fclose)
打开或创建文件
要打开文件,必须将fopen功能与所需的访问模式一起使用。下面提到一些常用的文件访问模式。
C中的文件打开模式:
“ r” –搜索文件。如果文件成功打开,则fopen()将其加载到内存中并设置一个指向其中第一个字符的指针。如果无法打开文件,则fopen()返回NULL。
“ w” –搜索文件。如果文件存在,其内容将被覆盖。如果该文件不存在,则会创建一个新文件。如果无法打开文件,则返回NULL。
“ a” –搜索文件。如果文件成功打开,则fopen()将其加载到内存中,并设置一个指向其中最后一个字符的指针。如果该文件不存在,则会创建一个新文件。如果无法打开文件,则返回NULL。
“ r +” –搜索文件。如果成功打开,则fopen()将其加载到内存中并设置一个指向其中第一个字符的指针。如果无法打开文件,则返回NULL。
“ w +” –搜索文件。如果文件存在,其内容将被覆盖。如果该文件不存在,则会创建一个新文件。如果无法打开文件,则返回NULL。
“ a +” –搜索文件。如果文件成功打开,则fopen()将其加载到内存中并设置一个指向文件中最后一个字符的指针。如果该文件不存在,则会创建一个新文件。如果无法打开文件,则返回NULL。
如上所述,如果要对二进制文件执行操作,则必须在最后附加“ b”。例如,您必须使用“ wb”代替“ w”,而不是“ a +”。为了对文件执行操作,使用了一个称为文件指针的特殊指针,该指针声明为
可以更改第二个参数以包含上表中列出的所有属性。
文件读取–可以使用函数fscanf或fgets执行文件读取操作。这两个函数执行与scanf相同的操作,并获得,但带有附加参数文件指针。因此,要逐行读取还是逐字符读取文件取决于您。
读取文件的代码片段为:
文件写入操作可以由功能fprintf和fputs执行,这些功能与读取操作相似。写入文件的片段为:
在每次成功执行fie操作之后,必须始终关闭文件。要关闭文件,必须使用fclose函数。关闭文件的片段为:
示例1:打开文件,写入文件和关闭文件的程序
示例2:打开文件,读取文件并关闭文件的程序
领取专属 10元无门槛券
私享最新 技术干货