c语言中操作文件的函数 c语言文件操作函数有哪些

C语言怎样对文件进行操作 我们运用C语言编写程序的时候,经常需要对文件进行操作 。那么该如何实现呢?下面我给大家分享一下 。
工具/材料
Sunlime Text
01
打开SublimeText软件,新建一个C语言文件 , 然后导入C语言库,如下图所示
02
接下来新建C语言的main函数,对文件的操作都会在main函数中进行,如下图所示
03
接下来调用C语言的fopen函数对文件进行打开操作,如下图所示
04
当打开文件以后就可以通过fgetc函数读取文件里面的内容 , 如下图所示
c语言中进行文件读写的函数是?标准函数是:fopen、fread、fwrite、fclose等函数;
当然fprintf和fscanf函数也可以进行文件的读写;
有问题,请追问;
用C语言实现文件读写操作 用C语言实现文件读写操作
#include “stdio.h”
main()
{
FILE *fp;
char ch,filename[10];
scanf(“%s”,filename);
if((fp=fopen(filename,”w”)==NULL)
{
printf(“cann’t open file\n”);
exit(0);
}
ch=getchar();
while(ch!=’#')
{
fputc(ch,fp);
putchar(ch);
ch=getchar();
}
fclose(fp);
}
拓展阅读:
基于C的文件操作
在ANSI C中,对文件的操作分为两种方式,即流式文件操作和I/O文件操作,下面就分别介绍之 。
一、流式文件操作
这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下:
typedef struct {
int level; /* fill/empty level of buffer */
unsigned flags; /* File status flags */
char fd; /* File descriptor */
unsigned char hold; /* Ungetc char if no buffer */
int bsize; /* Buffer size */
unsigned char _FAR *buffer; /* Data transfer buffer */
unsigned char _FAR *curp; /* Current active pointer */
unsigned istemp; /* Temporary file indicator */
short token; /* Used for validity checking */
} FILE; /* This is the FILE object */
FILE这个结构包含了文件操作的基本属性,对文件的操作都要通过这个结构的指针来进行,此种文件操作常用的函数见下表 函数 功能
fopen() 打开流
fclose() 关闭流
fputc() 写一个字符到流中
fgetc() 从流中读一个字符
fseek() 在流中定位到指定的字符
fputs() 写字符串到流
fgets() 从流中读一行或指定个字符
fprintf() 按格式输出到流
fscanf() 从流中按格式读取
feof() 到达文件尾时返回真值
ferror() 发生错误时返回其值
rewind() 复位文件定位器到文件开始处
remove() 删除文件
fread() 从流中读指定个数的字符
fwrite() 向流中写指定个数的字符
tmpfile() 生成一个临时文件流
tmpnam() 生成一个唯一的文件名
下面就介绍一下这些函数
1.fopen()
fopen的原型是:FILE *fopen(const char *filename,const char *mode),fopen实现三个功能
为使用而打开一个流
把一个文件和此流相连接
给此流返回一个FILR指针
参数filename指向要打开的文件名,mode表示打开状态的字符串,其取值如下表
字符串 含义
"r" 以只读方式打开文件
"w" 以只写方式打开文件
"a" 以追加方式打开文件
"r+" 以读/写方式打开文件,如无文件出错
"w+" 以读/写方式打开文件 , 如无文件生成新文件
一个文件可以以文本模式或二进制模式打开,这两种的区别是:在文本模式中回车被当成一个字符''\n'',而二进制模式认为它是两个字符 0x0D,0x0A;如果在文件中读到0x1B,文本模式会认为这是文件结束符 , 也就是二进制模型不会对文件进行处理,而文本方式会按一定的方式对数据作相应的转换 。

推荐阅读