2024年4月29日发(作者:)

write()写文件函数

原形:intwrite(inthandle,char*buf,unsignedlen)

用法:write(文件句柄,缓冲区地址,缓冲区字节长度<最大65534>);

功能:将缓冲区的数据写入与handle相联的文件或设备中,handle是从creat、open、dup

或dup2调用中得到的文件句柄。对于磁盘或磁盘文件,写操作从当前文件指针处开始,对于

用O_APPEND选项打开的文件,写数据之前,文件指针指向EOF;对于设备,字节被直接

传送到设备中;

返回值:实际写入的字节数(不包括回车符),出错时返回-1。

头文件:io.h

_write()写文件函数

原形:int_write(handle,buffer,count)

inthandle;//文件的句柄

void*buffer;//存放数据的缓冲区

unsignedcount;//写入的字节数

功能:从由buffer指定的缓冲区写入由count指定字节数的数据到由handle指定的文件。返

回实际写入的字节数。

返回值:0-0xfffe(实际写入的字节数);-1(错误)

头文件:io.h

read()读文件函数

原形:intread(inthandle,void*buf,unsignedlen)

功能:从与handle(从creat、open、dup或dup2调用中得到的句柄)相联的文件中读取len字

节到由buf所指的缓冲区中。对于以文本方式打开的文件,read删除读入数据中的回车符。

当读到Ctrl-Z字符时返回文件结束。对于磁盘文件,read从当前文件指针处开始读取数据。

在读操作完成后,文件指针增量为读入的字节数。对于设备,直接从设备中读字节。

返回值:读入缓冲区的字节数,如果文件以文本方式打开,则不包括回车符和Ctrl-Z字符。

头文件:io.h

_read()读文件函数

原形:int_read(handle,buffer,count)

inthandle;//文件句柄

void*buffer;//存放读出数据的缓冲区

unsignedcount;//一次读出的字节数

功能:从由handle指定的文件中读取由count指定字节数的数据到buffer

open()打开文件进行读写的函数

原形:intopen(constchar*path,intaccess[,unsignedmode])

使用方法:文件句柄=open("文件名",打开模式|打开模式);

功能:打开path指定的文件,根据access指定的模式值读写。

access模式:

O_RDONLY以只读方式打开

O_WRONLY以只写方式打开

O_RDOWR以读写方式打开

以上标志只能使用一个,以下可以用|组合使用

O_NDELAY

O_APPEND若置位,每次写操作前都使文件指针指到文件末尾

O_CREAT若文件不存在则创建

O_TRUNC若文件已存在,则将文件长度截为0

O_EXCL只和O_CREAT一起使用,若文件已经存在,返回错误代码

O_BINARY以二进制方式打开

O_TEXT以文本方式打开

如果使用了O_CREAT方式,则需要提供参数mode

(S_IWRITE可写;S_IREAD可读;S_IREAD|S_IWRITE可读写)

返回值:文件句柄(成功时);-1(失败时)。

成功时,文件指针指向文件头。

头文件:fcntl.h、io.h

======================================================================

=

_open()打开一个文件进行读写的函数

原形:int_open(path,oflags)

char*path;//已建立文件的路径名

intoflags;//方式

功能:打开由path指定的文件,返回文件的句柄

返回值:0(正常结束);-1(错误)

头文件:fcntl.h、io.h

lseek()移动文件指针函数

原形:longlseek(inthandle,longoffset,intfromwhere)

handle=open()函数的返回值(文件句柄);

fromwhere=文件位置

(SEEK_SET(0)从文件头位置;SEEK_CUR(1)从当前文件指针位置;SEEK_END(2)

从文件结尾位置)

功能:把文件指针移动到fromwhere所指的地址加上offset新位置的偏移上。

头文件:io.h

返回值:指针新位置的偏移量(相对于文件开始处),出错时返回-1L。

===================================================================

close()关闭文件函数

原形:intclose(inthandle)

功能:关闭由文件句柄所指向的文件,句柄是调用_creat、creat、creatnew、creattemp、dup、

dup2、_open或open时得到的。该函数并不在文件末尾写一个Ctrl-Z字符,如果想用该字

符结束文件,必须显式地给出该字符。

返回值:0(成功);-1(失败)

头文件:io.h

返回值:0-0xfffe(实际读出的字节数);-1(错误)

头文件:io.h

chmod()改变文件存取权限的函数

原形:intchmod(constchar*path,intamode)

功能:根据amode的值,设置由path所指文件的存取权限。

amode的值存取权限

S_IWRITE允许写

S_IREAD允许读(只读)

S_IREAD|S_IWRITE可读可写

返回值:0(成功);-1(失败)

头文件:io.h、sysstat.h

====================================================================

_chmod()改变文件存取权限的函数

原形:int_chmod(constchar*path,intfunc[,intattrib])

功能:读取(func=0时)或设置(func=1时)DOS文件属性。

attrib=FA_RDONLY只读

attrib=FA_HIDDEN隐藏文件

attrib=FA_SYSTEM系统文件

attrib=FA_LABLE卷标

attrib=FA_DIREC目录

attrib=FA_ARCH档案

返回值:失败时返回-1。成功时返回文件的属性字节,如果返回值&FA_RDONLY不等于0,

则文件是只读文件;......

头文件:io.h、dos.h

=================================================================

_open()打开一个文件进行读写的函数

原形:int_open(path,oflags)

char*path;//已建立文件的路径名

intoflags;//方式

功能:打开由path指定的文件,返回文件的句柄

返回值:0(正常结束);-1(错误)

头文件:fcntl.h、io.h

=================================================================

open()打开文件进行读写的函数

原形:intopen(constchar*path,intaccess[,unsignedmode])

使用方法:文件句柄=open("文件名",打开模式|打开模式);

功能:打开path指定的文件,根据access指定的模式值读写。

access模式:

O_RDONLY以只读方式打开

O_WRONLY以只写方式打开

O_RDOWR以读写方式打开

以上标志只能使用一个,以下可以用|组合使用

O_NDELAY

O_APPEND若置位,每次写操作前都使文件指针指到文件末尾

O_CREAT若文件不存在则创建

O_TRUNC若文件已存在,则将文件长度截为0

O_EXCL只和O_CREAT一起使用,若文件已经存在,返回错误代码

O_BINARY以二进制方式打开

O_TEXT以文本方式打开

如果使用了O_CREAT方式,则需要提供参数mode

(S_IWRITE可写;S_IREAD可读;S_IREAD|S_IWRITE可读写)

返回值:文件句柄(成功时);-1(失败时)。

成功时,文件指针指向文件头。

头文件:fcntl.h、io.h