C语言---文件管理

简介: 介绍了一些文件操作函数


当我们在电脑上打开安装软件的那个文件夹我们就会发现,它除了可执行程序之外还有好多其他文件,而这也就是为什么这些软件可以保存你的使用数据而我们自己写的程序却无法保存数据。这篇文章就将会为我们介绍如何用C语言来对文件进行操控。

文件分为程序文件和数据文件而我们主要是对数据文件进行操作。

使用文件我们可以将数据直接存放在电脑的硬盘上,做到了数据的持久化。而要使用文件就必须先将文件打开。下面就是我们的第一个函数fopen。

fopen

FILE * fopen ( const char * filename, const char * mode );

这个函数的作用就是以我们指定的模式来打开指定的的文件。

返回值是一个指向该文件信息区的指针,可以简单将其理解为指向该文件的指针

filename:第一个参数需要我们传文件的地址和名字(包含文件后缀);

可以传相对位置

intmain()
{
//这里的"data.txt"表示的是在当前程序所在的文件夹里面寻找名为data后缀为.txt的文件FILE*p=fopen("data.txt", "r");
//这里的"..\\data.txt"表示的是在当前程序所在的文件夹的上一级文件夹里面寻找名为data后缀为.txt的文件;..\\表示上一级文件夹.\\表示当前文件夹FILE*pf=fopen("..\\data.txt", "r");
fcloce(p);
fcloce(pf);
p=NULL;
pf=NULL;
return0;
}

image.gif

也可以传绝对位置

FILE*p=fopen("D:\\c&cpp\\c\\data.txt", "w");
fclose(p);
p=NULL;

image.gif

mode:第二个参数需要我们传我们需要这个文件以什么方式打开。

文件使用方式 含义 如果指定文件不存在
“r”(只读) 为了输入数据,打开一个已经存在的文本文件 出错
“w”(只写) 为了输出数据,打开一个文本文件 建立一个新的文件
“a”(追加) 向文本文件尾添加数据 建立一个新的文件
“rb”(只读) 为了输入数据,打开一个二进制文件 出错
“wb”(只写) 为了输出数据,打开一个二进制文件 建立一个新的文件
“ab”(追加) 向一个二进制文件尾添加数据 建立一个新的文件
“r+”(读写) 为了读和写,打开一个文本文件   出错
“w+”(读写) 为了读和写,建立一个新的文件 建立一个新的文件 
“a+”(读写) 打开一个文件 在文件尾进行读写 建立一个新的文件
“rb+”(读写) 为了读和写打开一个二进制文件 出错
“wb+”(读写) 为了读和写,新建一个新的二进制文件 建立一个新的文件
“ab+”(读写) 打开一个二进制文件,在文件尾进行读和写 建立一个新的文件

现在我们已经了解了打开文件,它其实也和动态内存开辟一样我们打开的文件在我们用完了之后一定要将它关闭并将文件指针变量置空,防止其变为野指针而为我们的程序留下隐患 。下面就为大家介绍文件关闭函数:fclose

fclose

int fclose ( FILE * stream );

它的功能就是关闭已打开的文件。

stream:是一个文件指针变量

返回值:如果成功关闭返回0失败返回EOF

如果我们想对文件进行读写操作就需要fgetc , fputc。

对文件进行读写操作

fgetc

int fgetc ( FILE * stream );

这是一个读文件的函数它是从指定文件中读取一个字符返回它的ASCII码值,如果读取失败就返回EOF。

fputc

int fputc ( int character, FILE * stream );

函数功能是将一个字符写入文件。

character:需要写入字符的ASCII码;

stream:待写入字符的文件的文件指针;

如果写入失败就返回EOF。

其他的一些输入输出函数

功能 函数名 适用于
字符输入函数 fgetc 所有输入流
字符输出函数 fputc 所有输出流
文本行输入函数 fgets 所有输入流
文本行输出函数 fputs 所有输出流
格式化输入函数 fscanf 所有输入流
格式化输出函数 fprintf 所有输出流
二进制输入 fread 文件
二进制输出 fwrite 文件
目录
相关文章
|
6天前
|
存储 编译器 C语言
关于文件操作---C语言
关于文件操作---C语言
|
6天前
|
C语言
C语言---文件操作(1)
C语言---文件操作(1)
29 0
|
6天前
|
存储 文件存储 C语言
文件操作函数---C语言版本
数据存放在内存中:程序退出、掉电 =》数据丢失 数据存放在硬盘中:即存储在文件中,即使程序退出、掉电 =》数据不会丢失
|
6天前
|
存储 传感器 编译器
C语言文件操作(详解)(二)
C语言文件操作(详解)(二)
63 0
|
6天前
|
存储 传感器 编译器
C语言文件操作(详解)(一)
C语言文件操作(详解)(一)
57 0
|
7月前
|
存储 Java C语言
初识C语言 --- 02
初识C语言 --- 02
12 0
|
10月前
|
存储 编译器 C语言
【C语言】文件操作详解(一)(上)
【C语言】文件操作详解(一)
【C语言】文件操作详解(一)(上)
|
10月前
|
存储 C语言
【C语言】文件操作详解(一)(下)
【C语言】文件操作详解(一)(下)
|
10月前
|
存储 程序员 C语言
C语言进阶---文件操作
本章主要介绍了C语言文件操作,主要内容为:详细介绍了fopen,fclose,foutc,fgetc,fputs,fgets,fscanf,fprintf,fwrite,fread,sscanf,sprintf函数的使用。以及文件的随机读写,文本文件和二进制文件,文件读取结束的标志,文件缓冲区。
C语言进阶---文件操作
|
11月前
|
存储 编译器 数据库