文件I/O操作之open 的O_APPEND参数
来源:互联网 发布:水果软件12教程 编辑:程序博客网 时间:2024/05/16 08:00
文件I/O操作由系统调用open, write, read, lseek, close实现。
其中close最简单,调用格式为close(fd) ----->fd为整型的文件描述符号;
open( "filename", O_RDONLY|O_WRONLY|O_RDWR|O_APPEND, mode) ,其中mode为打开文件的权限;
当使用了O_APPEND参数后,打开的文件在写入内容追加方式,即采用lseek将偏移量移置其地方。
另外没有使用O_APPEND时open后偏移量为0,即在文件的开始处。
以下lseek 设置了文件偏移量为0,但第二次写入是追加在第一次上的,而不是覆盖在第一次。
运行结果:
代码:
使用了O_APPEND标志打开一个文件,则相应标志也被设置到文件表项的文件状态标志中。每次对这种具有添写标志的文件执行写操作时,
在文件表项中的当前文件偏移量首先被置为i节点表项中的文件长度。这就使得每次写的数据都添加到文件的当前尾端处。
0 0
- 文件I/O操作之open 的O_APPEND参数
- 《Linux C》01 文件I/O之Open操作
- 【文件】不带缓存的文件I/O操作函数之creat、open
- 不带缓存的文件I/O操作 open/close
- 底层文件I/O操作---open()函数
- 文件I/O之open函数
- open函数O_APPEND的含义
- Linux学习之文件I/O操作
- I\O操作文件之fgetc
- 文件操作之标准I/O函数库
- java I/O流之文件操作
- JAVA之文件操作(I/O)
- I/O操作之文件锁定
- 文件I/O操作
- 文件I/O操作
- 文件I/O操作
- I/O 文件操作
- 文件I/O操作
- 解决CentOS 与 Ubuntu 中 Android ADT Failed to start emulator无法启动AVD的问题
- 碰到的word文档提示找不到package解决办法
- 体验新理财方式:余额宝与微信理财
- /bin/sh: autoreconf: command not found (centos 6.5 install qemu from source code)
- android:textAlignment 参数解释
- 文件I/O操作之open 的O_APPEND参数
- Android中Bitmap、Drawable、byte[]转换
- js正则表达式把不符合条件的字符替换处理(总结)
- 教你使用阿里云服务器挂载数据盘
- CVS
- spring mvc框架下controller中如何读取properties文件内容
- uva----10905
- Android应用卸载器
- 九度OJ 1084: 整数拆分