首页技术fopen w?fopen函数的用法

fopen w?fopen函数的用法

编程之家2026-06-05783次浏览

今天给各位分享fopen w的知识,其中也会对fopen函数的用法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

fopen w?fopen函数的用法

C语言Fopen函数的用法

fopen函数用来打开一个文件,其调用的一般形式为:

文件指针名=fopen(文件名,使用文件方式);

其中,

“文件指针名”必须是被说明为FILE类型的指针变量;

“文件名”是被打开文件的文件名;

“使用文件方式”是指文件的类型和操作要求。

fopen w?fopen函数的用法

“文件名”是字符串常量或字符串数组。

例如:

FILE*fp;

fp=("file a","r");

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

又如:

fopen w?fopen函数的用法

FILE*fphzk

fphzk=("c:\\hzk16","rb")

其意义是打开C驱动器磁盘的根目录下的文件hzk16,这是一个二进制文件,只允许按二进制方式进行读操作。两个反斜线“\\”中的第一个表示转义字符,第二个表示根目录。

使用文件的方式共有12种,下面给出了它们的符号和意义。

文件使用方式

意义

“rt”

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

“wt”

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

“at”

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

“rb”

只读打开一个二进制文件,只允许读数据

“wb”

只写打开或建立一个二进制文件,只允许写数据

“ab”

追加打开一个二进制文件,并在文件末尾写数据

“rt+”

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

“wt+”

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

“at+”

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

“rb+”

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

“wb+”

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

“ab+”

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

对于文件使用方式有以下几点说明:

1)文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:

r(read):读

w(write):写

a(append):追加

t(text):文本文件,可省略不写

b(banary):二进制文件

+:读和写

2)凡用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。

3)用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。

4)若要向一个已存在的文件追加新的信息,只能用“a”方式打开文件。但此时该文件必须是存在的,否则将会出错。

5)在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。因此常用以下程序段打开文件:

6) if((fp=fopen("c:\\hzk16","rb")==NULL)

{

printf("\nerror on open c:\\hzk16 file!");

getch();

exit(1);

}

这段程序的意义是,如果返回的指针为空,表示不能打开C盘根目录下的hzk16文件,则给出提示信息“error on open c:\ hzk16 file!”,下一行getch()的功能是从键盘输入一个字符,但不在屏幕上显示。在这里,该行的作用是等待,只有当用户从键盘敲任一键时,程序才继续执行,因此用户可利用这个等待时间阅读出错提示。敲键后执行exit(1)退出程序。

7)把一个文本文件读入内存时,要将ASCII码转换成二进制码,而把文件以文本方式写入磁盘时,也要把二进制码转换成ASCII码,因此文本文件的读写要花费较多的转换时间。对二进制文件的读写不存在这种转换。

8)标准输入文件(键盘),标准输出文件(显示器),标准出错输出(出错信息)是由系统打开的,可直接使用。

如何用C语言fopen函数实现这样的文件打开功能

部分方法:

fopen的函数原型:FILE* fopen(const char* path,const char* mode);

fopen函数的第一个参数是文件路径,第二个参数是打开方式,有以下几种方式:

r以只读方式打开文件,该文件必须存在。

r+以可读写方式打开文件,该文件必须存在。

rb+读写打开一个二进制文件,允许读数据。

rw+读写打开一个文本文件,允许读和写。

w打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

a以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)

a+以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。(原来的EOF符不保留)

wb只写打开或新建一个二进制文件;只允许写数据。

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

wt+读写打开或着建立一个文本文件;允许读写。

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

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

上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。

C语言的文件处理的过程是,先声明一个文件指针,然后用fopen函数打开文件,fopen打开文件成功的话返回一个指针该流的文件指针,然后利用指针对文件进行操作就好了,最后完事了在fclose函数关闭流,并释放指向他的指针。

例如:要对c:\example.txt的文本文件内容为:ISP,进行操作

#include<stdio.h>

int main()

{

char ch;

FILE* fp;

char fname[50]="c:\example.txt";

fp= fopen(fname,"r");//只供读取

if(fp== NULL)//如果失败了

{

printf("ERROR!");

return 1;

}

//getc()用于在打开文件中获取一个字符

while((ch= getc(fp))!= EOF)//循环获取直至文件结束 EOF标志(End Of File)

putchar(ch);//打印获取到的字符

fclose(fp);//关闭文件

return 0;

}

希望对你有帮助!

c语言fopen函式详细资料大全

fopen函式是在当前目录下打开一个档案,其调用的一般形式为:

档案指针名=fopen(档案名称,使用档案方式);

“档案指针名”必须是被声明为FILE类型的指针变数;

“档案名称”是被打开档案的档案名称;

“使用档案方式”是指档案的类型和操作要求;

“档案名称”是字元串常量或字元数组。

基本介绍中文名:c语言fopen函式意义是:在当前目录下打开档案file a允许:进行“读”操作使用档案方式:共有12种函式介绍,意义,函式介绍例如: FILE*fp; fp=fopen("file a","r");其意义是在当前目录下打开档案file a,只允许进行“读”操作,并使fp指向该档案。又如: FILE*fphzk fphzk=fopen("c:\\hzk16","rb");其意义是打开C驱动器磁碟的根目录下的档案hzk16,这是一个二进制档案,只允许按二进制方式进行读操作。两个反斜线“\\”中的第一个表示转义字元,第二个表示根目录。使用档案的方式共有12种,下面给出了它们的符号和意义。档案使用方式意义"r"="rt"打开一个文本档案,档案必须存在,只允许读"r+"="rt+"打开一个文本档案,档案必须存在,允许读写"rb"打开一个二进制档案,档案必须存在,只允许读“rb+”打开一个二进制档案,档案必须存在,允许读写"w"=“wt”新建一个文本档案,已存在的档案将被删除,只允许写"w+"="wt+"新建一个文本档案,已存在的档案将被删除,允许读写“wb”新建一个二进制档案,已存在的档案将被删除,只允许写“wb+”新建一个二进制档案,已存在的档案将被删除,允许读写"a"="at"打开或新建一个文本档案,只允许在档案末尾追写"a+"="at+"打开或新建一个文本档案,可以读,但只允许在档案末尾追写“ab”打开或新建一个二进制档案,只允许在档案末尾追写“ab+”打开或新建一个二进制档案,可以读,但只允许在档案末尾追写对于档案使用方式有以下几点说明: 1)档案使用方式由r,w,a,t,b,+六个字元拼成,各字元的含义是: r(read):唯读 w(write):只写 a(append):追加 t(text):文本档案,可省略不写 b(binary):二进制档案+:读和写 2)凡用“r”打开一个档案时,该档案必须已经存在,且只能从该档案读出。 3)用“w”打开的档案只能向该档案写入。若打开的档案不存在,则以指定的档案名称建立该档案,若打开的档案已经存在,则将该档案删去,重建一个新档案。 4)若要向一个已存在的档案追加新的信息,只能用“a”方式打开档案。如果指定档案不存在则尝试创建该档案。 5)在打开一个档案时,如果出错,fopen将返回一个空指针值NULL。在程式中可以用这一信息来判别是否完成打开档案的工作,并作相应的处理。因此常用以下程式段打开档案: 6) if((fp=fopen("c:\\hzk16","rb"))==NULL){ printf("

error on open c:\\hzk16 file!"); getch(); exit(1);}这段程式的意义是,如果返回的指针为空,表示不能打开C糟根目录下的hzk16档案,则给出提示信息“error on open c:\ hzk16 file!”,下一行getch()的功能是从键盘输入一个字元,但不在萤幕上显示。在这里,该行的作用是等待,只有当用户从键盘敲任一键时,程式才继续执行,因此用户可利用这个等待时间阅读出错提示。敲键后执行exit(1)退出程式。 7)把一个文本档案读入记忆体时,要将ASCII码转换成二进制码,而把档案以文本方式写入磁碟时,也要把二进制码转换成ASCII码,因此文本档案的读写要花费较多的转换时间。对二进制档案的读写不存在这种转换。 8)标准输入档案(键盘),标准输出档案(显示器),标准出错输出(出错信息)是由系统打开的,可直接使用。

关于fopen w和fopen函数的用法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

java环境下载 java软件寻找喀克冰(寻找遗失的冰川)