write()写文件函数
原形:int write(int handle,char *buf,unsigned len)
用法:write(文件句柄,缓冲区地址,缓冲区字节长度<最大65534>);
功能:将缓冲区的数据写入与handle相联的文件或设备中,handle是从creat、open、dup或dup2调用中得到的文件句柄。对于磁盘或磁盘文件,写操作从当前文件指针处开始,对于用O_APPEND选项打开的文件,写数据之前,文件指针指向EOF;对于设备,字节被直接传送到设备中;
返回值:实际写入的字节数(不包括回车符),出错时返回-1。
头文件:io.h
_write()写文件函数
原形:int _write(handle,buffer,count)
int handle;//文件的句柄
void *buffer;//存放数据的缓冲区
unsigned count;//写入的字节数
功能:从由buffer指定的缓冲区写入由count指定字节数的数据到由handle指定的文件。返回实际写入的字节数。
返回值:0-0xfffe(实际写入的字节数);-1(错误)
头文件:io.h
read()读文件函数
原形:int read(int handle,void *buf,unsigned len)
功能:从与handle(从creat、open、dup或dup2调用中得到的句柄)相联的文件中读取len字节到由buf所指的缓冲区中。对于以文本方式打开的文件,read删除读入数据中的回车符。当读到Ctrl-Z字符时返回文件结束。对于磁盘文件,read从当前文件指针处开始读取数据。在读操作完成后,文件指针增量为读入的字节数。对于设备,直接从设备中读字节。
返回值:读入缓冲区的字节数,如果文件以文本方式打开,则不包括回车符和Ctrl-Z字符。
头文件:io.h
_read()读文件函数
原形:int _read(handle,buffer,count)
int handle;//文件句柄
void *buffer;//存放读出数据的缓冲区
unsigned count;//一次读出的字节数
功能:从由handle指定的文件中读取由count指定字节数的数据到buffer
open()打开文件进行读写的函数
原形:int open(const char *path,int access[,unsigned mode])
使用方法:文件句柄=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;//已建立文件的路径名
int oflags;//方式
功能:打开由path指定的文件,返回文件的句柄
返回值:0(正常结束);-1(错误)
头文件:fcntl.h、io.h
lseek()移动文件指针函数
原形:long lseek(int handle,long offset,int fromwhere)
handle=open()函数的返回值(文件句柄);
fromwhere=文件位置
(SEEK_SET(0)从文件头位置;SEEK_CUR(1)从当前文件指针位置;SEEK_END(2)从文件结尾位置)
功能:把文件指针移动到fromwhere所指的地址加上offset新位置的偏移上。
头文件:io.h
返回值:指针新位置的偏移量(相对于文件开始处),出错时返回-1L。
===================================================================
close()关闭文件函数
原形:int close(int handle)
功能:关闭由文件句柄所指向的文件,句柄是调用_creat、creat、creatnew、creattemp、dup、dup2、_open或open时得到的。该函数并不在文件末尾写一个Ctrl-Z字符,如果想用该字符结束文件,必须显式地给出该字符。
返回值:0(成功);-1(失败)
头文件:io.h
返回值:0-0xfffe(实际读出的字节数);-1(错误)
头文件:io.h
chmod()改变文件存取权限的函数
原形:int chmod(const char *path,int amode)
功能:根据amode的值,设置由path所指文件的存取权限。
amode的值 存取权限
S_IWRITE 允许写
S_IREAD 允许读(只读)
S_IREAD|S_IWRITE 可读可写
返回值:0(成功);-1(失败)
头文件:io.h、sys/stat.h
====================================================================
_chmod()改变文件存取权限的函数
原形:int _chmod(const char *path,int func[,int attrib])
功能:读取(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;//已建立文件的路径名
int oflags;//方式
功能:打开由path指定的文件,返回文件的句柄
返回值:0(正常结束);-1(错误)
头文件:fcntl.h、io.h
=================================================================
open()打开文件进行读写的函数
原形:int open(const char *path,int access[,unsigned mode])
使用方法:文件句柄=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