liunx--文件----不带I/o缓冲的操作

 

不带缓存的I/O操作

1,          creat函数

函数作用:创建一个文件

函数原型:int creat(const char *pathname,mode_tmode)

函数参数:*pathname:文件的路径或者文件名

           mode:文件的属性

                 S_IRUSR:可读

                 S_IWUSR:可写

                 S_IXUSR:可执行

                 S_IXRWU:可读,可写,可执行

也可以用数字来表示文件的属性,例如:0666,三个目录下的文件都是可读可写的。

函数头文件:#include<sys/types.h>

           #include<sys/stat.h>

            #include<fcnt/.h>

函数返回值成功返回:新的文件描述符

            失败返回:-1.

 

 

2,          open函数

函数作用:打开一个文件

函数原型:1,intopen(const char *pathname,int flags)

 2, ,int open(const char *pathname,intflags,mode_t mode)

使用条件:如果文件存在,那么就用1函数

           如果函数不存在,那么就用2函数,先创建再打开。

函数参数:flags:O_RDONLY:只读

                O_WRONLY:只写

                O_CREAT: 原来的文件不存在,那么就先创建再打开

                O_APPEND:写入的文件的数据附加到文件中(如果文件中存在数据)

                O_TRUNC:若文件中有数据,那么会被清空

                O_NONBLOCK:以不可阻挡的方式打开文件

函数头文件:如1.

函数返回值:成功返回文件的描述符

             失败返回-1

 

3,          read函数

函数作用:从文件描述符fd所指定的文件中读取count个 字节到buf所指向的缓冲区中。

函数原型:ssize_t read(int fd,void*buf,size_t count)

函数参数:

函数头文件:#include<unistd.h>

函数返回值:成功:>0实际读到的字节数

                  =0文件结束后者文件中没有数据

                  <0,即-1,表示出错

 

4,          write函数

函数作用:向打开的文件中写入数据

函数原型:ssize_t write(int fd,constvoid *buf,size_t count)

函数参数:

函数头文件:#include<unistd.h>

函数返回值: 写入全部数据,

             写入部分数据,返回实际写入的字节数

             出错,返回-1.

 

 

5,          lseek函数

函数作用:进行文件内部的文件的指针定位

函数的原型:int lseek(int fd,offset_toffset,int whence)

函数的参数:offset:表示文件指针的移动大小,可负可正。

            Whence:SEEK_SET:相对文件开头

                    SEEK_CUR:相对文件读写指针的当前位置

                    SEEK_END:相对文件末尾

函数头文件:#include<unistd.h>

函数的返回值:成功返回:文件当前文件指针到文件开始的地方有多少个字节

              失败返回-1.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值