文件的打开 (fopen()函数)

转载 2007年09月12日 16:28:00
 

文件的打开(fopen()函数)

返回

0001.gif (1095 字节)

M0PS8JPT.gif (1653 字节) 调用形式

        #include"stdio.h"

        fp=fopen(文件名,使用文件方式)

    例如:

            fp=fopen("cs.txt","r");

M0PS8JPT.gif (1653 字节) 说明

    (1)文件指针变量

    fp为文件类型指针变量,其定义如下:

        FILE *fp;

    打开一个文件时,系统要在内存中开辟一块区域来保存该文件的有关信息(如文件名、文件状态、文件缓冲区位置等等),C语言在头文件stdio.h中定义的FILE类型对有关的文件信息作了说明。被定义为FILE类型的指针变量fp可以用来存放与文件相关的内存区的首地址(“指针”就是“地址”的意思)。C语言规定,在程序中只要有对文件的操作,就必须先定义文件指针变量,如果要同时使用n个文件,就必须定义n个文件指针变量。

    (2)参数

    “文件名”指明了要打开的是哪一个文件,它可以是字符串常量,也可以是字符数组名。Turbo C允许在文件名中使用盘符和路径,但要Exclaim.gif (1443 字节)注意路径分隔符必须是“//”而不是“/”(因为C语言中的转义字符以“/”开头)。例如:

        "C://DATA//CLS.DAT"

    意为

    “使用文件方式”是一个用双引号引起来的字符串,它可以是下列任一值:

"r"

以只读方式打开一个文本文件。
不能以该方式打开一个不存在的文件,否则出错。

"w"

以只写方式打开一个文件文件。
若文件不存在,则系统自动建立该文件;
若文件已经存在,则在打开时将该文件删去,然后重新建立一个新文件。

"a"

以向文件末尾添加数据的方式打开一个文本文件。
若文件不存在,则系统自动建立该文件。

"r+"

以读/写方式打开一个已有的文本文件;
即,打开文件后,既可对文件进行读操作,又可对文件进行写操作。

"w+"

以读/写方式建立一个新文本文件。
注意
"w+""r+"的区别,两者都是以读/写方式打开文件,但"r+"方式只能打开一个已有的文件,而"w+"方式可以打开已有的文件(但会删除该文件中的原有内容),也可以打开一个不存在的文件(即建立一个新文件)。

"a+"

以读/写方式打开一个文本文件,对文件的读写操作在文件的末尾进行。

    如果要打开一个二进制文件,则可在上述值之后加一个

M0PS8JPT.gif (1653 字节) 函数功能

    fopen()函数打开由文件名指定的文件,若成功地完成打开操作,则带回一个指向该文件的指针(即存放该文件有关信息的内存区的首地址),若打开文件时出现错误(例如,以"r"方式打开一个不存在的文件),则返回空指针值NULL

    例如:

        FILE *fp;

        fp=fopen("cls.dat","r");

    意为以只读方式打开当前盘当前目录下一个名为cls.dat的文件,并把返回的指向cls.dat文件的指针赋值给fp。这样,文件类型指针变量fp就与文件名cls.dat建立了一一对应关系,随后凡是对文件cls.dat的操作均用fp来识别该文件,而不再使用文件名。

b("rb","wb","rb+"等待)
C盘根目录下的DATA子目录下的CLS.DAT文件。

fopen()函数

1.2 文件的输入输出函数 键盘、显示器、打印机、磁盘驱动器等逻辑设备, 其输入输出都可以通过文件管理的方法来完成。而在编程时使用最多的要算是磁盘文件, 因此本节主要以磁盘文件为主, 详细介绍...
  • Borenbao
  • Borenbao
  • 2006年06月29日 10:45
  • 97430

fopen中文件的几种打开模式比较

r:只读.    w:只写,有create和truncate语义.    r+:update模式,可以读和写,要求文件必须存在,且没有truncate语义.读和写共用同一个指针位置,且如果读之...
  • xiazaizhanghao1
  • xiazaizhanghao1
  • 2013年05月24日 12:29
  • 729

文件的打开(fopen函数)

文件的打开(fopen函数) fopen函数用来打开一个文件,其调用的一般形式为:  文件指针名=fopen(文件名,使用文件方式);  其中,  “文件指针名”必须是被说明为FILE 类...
  • yunxianpiaoyu
  • yunxianpiaoyu
  • 2017年11月19日 21:25
  • 305

C语言的fopen函数(文件操作/读写)

头文件:#include fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为:     FILE * fopen(const char * path, const char ...
  • sky1203850702
  • sky1203850702
  • 2016年10月10日 15:32
  • 1811

怎样在fopen中传入变量文件名?{zz}

程序一开始,则动态生成一个临时目录,把生成的非空文本文件按第一个文件的文件名为1.txt,以后依次+1,即2.txt,3.txt......存入其中,然后倒序读出,当程序结束,删除该临时文件和目录。 ...
  • blandodo
  • blandodo
  • 2009年08月23日 21:11
  • 1553

文件操作fopen,fopen_s,_fsopen

最近程序中打开文件时,失败了,最后代码问题在:   fopen_s(&pFile,strPath.c_str(),"rb+"); 主要是"rb+"。 首先来看下介绍,主要是windows...
  • victor1960
  • victor1960
  • 2015年03月19日 17:27
  • 2899

系统字符代码页

10000 (MAC - 罗马)     10001 (MAC - 日文)     10002 (MAC - 繁体中文 Big5)     10003 (MAC - 韩文)     10004...
  • zzz3265
  • zzz3265
  • 2012年01月13日 12:08
  • 1114

fopen打开文件方式

最近写一个文件操作类,fopen的参数着实让我搞了半天,因为以前就是固定的方式读写文件的,现在要做灵活了,所以就有些参数理解不够准确。以下是关于mode参数的定义。'r' 只读方式打开,将文件指针指向...
  • lihualiu81
  • lihualiu81
  • 2011年03月03日 11:26
  • 6462

fopen等:文本方式和二进制方式打开文件的区别

文本方式和二进制方式在读写文件时是有区别的,以下主要对Windows系统下的一些不同进行说明。 第一: 1、使用二进制方式进行读文件时,会原封不动的读出全部的内容,写文件的时候,会把内存缓冲区的内...
  • u012372584
  • u012372584
  • 2017年09月04日 14:23
  • 897

C语言文件操作 fopen, fclose, mkdir(打开关闭文件,建文件夹,判断文件是否存在可读或可写)

http://blog.csdn.net/gneveek/article/details/6848473  1.建文件夹 int _mkdir(const char...
  • u013035197
  • u013035197
  • 2016年08月25日 00:19
  • 1856
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:文件的打开 (fopen()函数)
举报原因:
原因补充:

(最多只允许输入30个字)