当前位置:C++技术网 > 资讯 > C语言基础教程:14 文件相关入门

C语言基础教程:14 文件相关入门

更新时间:2015-10-06 21:08:27浏览次数:1+次

    这一讲来给大家讲讲文件的相关操作。文件?何为文件?大家几乎每天都在用,但真较真起来,大家还真就不一定说出文件的概念,当然我也不例外,我也说不出来那些个书面概念,但不重要,我们学的不是那些教授定义处的抽象的概念。好了,通俗点,文件嘛就是存储在磁盘上的很多01的集合。当然这些01是按照既定的文件系统排布的,windows上最新的算是NTFS了,linux下最近的是ext4。扯远了,这个大家知道就好了。

    C语言里面,规定对于文件的操作都是通过标准库函数实现的。常用的有

fopen():打开一个文件

fclose():关闭一个文件

fputc():向文件写字符

fgetc():从文件读字符

fgets():从文件读取一行

fputs():向文件写一行

fread():从文件读取数据块

fwrite():向文件写数据块

feof():判断文件是否到文件尾

rewind():移动文件指针

好了不给大家列举了,大家去查查怎么用吧。

下面给大家讲解一下fopen这个函数

fopen函数用来打开一个文件,其调用的一般形式为:文件指针=fopen(文件名,打开方式) 其中,例如:

FILE *fp=fopen("file.a","r");

其意义是在当前目录下打开文件file a,只允许进行操作,并使fp指向该文件。

打开方式主要有以下若干类:

r:只读打开一个文本文件,只允许读数据

w:只写打开或建立一个文本文件,只允许写数据

a:追加打开一个文本文件,并在文件末尾写数据

t:以文本的方式打开文件

b:以二进制的方式打开文件

+:可读可写

另外

rt+:读写打开一个文本文件,允许读和写

wt+:读写打开或建立一个文本文件,允许读写

at+:读写打开一个文本文件,允许读,或在文件末追加数据

rb+:读写打开一个二进制文件,允许读和写

wb+:读写打开或建立一个二进制文件,允许读和写

ab+:读写打开一个二进制文件,允许读,或在文件末追加数据

有关二进制文件和文本文件将有专门的文章讲解,大家别急,现在的话大家就暂且这两个一样吧。

 

下面给大家实际进行一个文件操作的例程

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

       FILE *fp1 = fopen("F:\\temp1.txt","r");

       FILE *fp2 = fopen("F:\\temp2.txt","w");

       int ch=0;

       while((ch=fgetc(fp1))!=EOF)

       {

           fputc(ch,fp2);

       }

       fclose(fp1);

       fclose(fp2);

       return 0;

}

 

这个程序实现了一个简单的文件复制操作。来看看效果

不错吧  基本的都实现了,大家别急。这讲主要是让大家来感受下,甚至于今天介绍的很多函数大家都不用去记,用到时多查查就好了,以后会为大家讲解每一个细节的。文件的加密解密都要讲,保准让大家学到每一个细节,尽我所能。好了  大家亲自去实现一下吧。