Linux编程,怎样用C语言创建、读、写文件呀?希望各位赐教!谢谢 (c linux程序创建文件)
既然得到了这文件指针,你想怎么打开都行,无需知道以前是什么模式。
用open更新你想要的打开方式。
o_rdonly
以只读方式打开文件
o_wronly
以只写方式打开文件
o_rdwr
以可读写方式打开文件。上述三种旗标是互斥的,
也就是不可同时使用,
但可与下列的旗标利用or(|)运算符组合。
o_creat
若欲打开的文件不存在则自动建立该文件。
o_excl
如果o_creat
也被设置,
此指令会去检查文件是否存在。文件若不存在则建立该文件,
否则将导致打开文件错误。此外,
若o_creat与o_excl同时设置,
并且欲打开的文件为符号连接,
则会打开文件失败。
o_noctty
如果欲打开的文件为终端机设备时,
则不会将该终端机当成进程控制终端机。
o_trunc
若文件存在并且以可写的方式打开时,
此旗标会令文件长度清为0,
而原来存于该文件的资料也会消失。
o_append
当读写文件时会从文仔卜件尾开始念哪穗移动,
也就是所写入的数据会以附加的方式加入到文件后面。
o_nonblock
以不可阻断的方式打开文件,
也就是无论有无数据读取或等待,
都会立即返回进程之中。
o_ndelay
同o_nonblock。
o_sync
以同步的方式打开文件。
o_nofollow
如果参数pathname
所指的文件为一符号连接,
则会令打开文件失败。
o_directory
如果参数pathname
所指的文件并非为一目录,
则会令打开文件失败。
这是你要的
r
打开只读文件,
该文件必须存在。
r+
打开可读写的文件,
该文件必须存在。
w
打开只写文件,
若文件存在则文件长度清为0,
即该文件内容会消失。若文件不存在则建立该文件。
w+
打开可读写文件,
若文件存在则文件长度清为零,
即该文件内容会消失。若文件不存在则建立该文件。
a
以附加的方式打开只写文件。若文件不存在,
则会建立该文件,
如果文件存在,
写入的数据会被加到文件尾,
即文件原先的内容会被保留。
a+
以附加方式打开可读写的文件。若文件不缓者存在,
则会建立该文件,
如果文件存在,
写入的数据会被加到文件尾后,
即文件原先的内容会被保留。