c语言fopen怎么用

Python012

c语言fopen怎么用,第1张

fopen一般与buf搭配使用,通过与fgets函数配合使用,将文件中的字符串读到buf中,这样达到读出文件内容的目的代码如下:

FILE tf=NULL//定义一个文件指着,用于判断fopen是否打开成功,并初始化为空;

char buf[1024]={0}//定义一个长度为1024的数组,用于存放文件的内容;

tf=fopen("c:\example.txt","r")//打开c盘指定文件,并以只读的形式打开,避免破坏原文件,将fopen的返回值放在指针tf中,若打开成功,则返回成功的指针,打开不成功则返回空;

if(tf != NULL)//判断是否成功,不等于NULL则表示成功

{

if(fgets(buf,1024,tf) != NULL)//将指向c盘文件的指针的内容赋给buf,长度为1024,并判断是否获取成功

{

printf("buf=%s\n",buf)//将成功获取的字符串显示在屏幕上;

}

}

fclose(tf)//将已打开的文件关闭;

扩展资料:

fopen的工作原理

FILE *fp

fp=fopen("filename.txt","w")

首先检测filename.txt是否存在,如果不存在则在磁盘 创建该文件,然后在内存开辟区域(应该是缓冲区)准备写该文件

调用fclose时,将内存中的内容写入到磁盘中去

测试(filename.txt不存在):

#include <stdio.h>

#include <stdlib.h>

int main()

{

FILE *fp1,*fp2

fp1=fopen("filename.txt","w")

if(fp1==NULL)

{

printf("fp1 open failed!/n")

}

else

{

printf("fp1 open success!/n")

}

fp2=fopen("filename.txt","r")

if(fp2==NULL)

{

printf("fp2 open failed!/n")

}

else

{

printf("fp2 open success!/n")

}

fclose(fp1)

fclose(fp2)

return 0

}

输出:

fp1 open success!

fp2 open success!

说明文件操作不是互斥的,而且以写方式打开文件,如果文件不存在,先在磁盘创建该文件

加入写入语句:

#include <stdio.h>

#include <stdlib.h>

int main()

{

FILE *fp1,*fp2

fp1=fopen("filename.txt","w")

if(fp1==NULL)

{

printf("fp1 open failed!/n")

}

else

{

printf("fp1 open success!/n")

fputs("abcdef",fp1)

}

fp2=fopen("filename.txt","w")

if(fp2==NULL)

{

printf("fp2 open failed!/n")

}

else

{

printf("fp2 open success!/n")

fputs("ABC/n",fp2)

}

fclose(fp1)

fclose(fp2)

return 0

}

打开filename.txt文件:

ABC

f

说明后关闭的,刷新了磁盘数据

参考资料来源:fopen-百度百科

可以调用 两次,但语法要正确

if ((fp1=fopen("putin", "ab+"))==NULL || (fp2=fopen("putout", "ab")) == NULL)//

~

fopen()是一个文件I/O 里面的函数 功能是打开一个文件。

其原型是 FILE *fopen(char *filename,char *mode)

返回值 :正常打开 返回指向文件结构体的指针。

失败,返回NULL;

要用这个函数是首先要定义一个 文件指针,例

FILE *fp=NULL

fp=fopen(“./txt”,"r")就是以只读的方式打开当前目录txt这个文件

第一个参数是要打开的文件名

第二个参数是:打开模式 r 只读 , r+ 读写, w只写 ,w+读写, a追加, a+