Linux系统编程(一)文件编程

本文介绍了Linux系统编程中的文件编程,包括使用open()、creat()函数打开或创建文件,write()函数进行文件写入,read()函数读取文件内容,close()函数关闭文件,以及lseek()函数调整文件指针位置。详细讲解了各种操作的功能和示例代码。
摘要由CSDN通过智能技术生成

文件编程概述:

  1. 应用中比如:账单,游戏进度,配置文件等。

  1. 用代码操作文件:实现文件创建,打开,编辑等自动化执行。

那么在Linux中如何编写一个文件呢?

步骤:打开(open)/创建(creat)->读写(read/write)->关闭(close)。

1.打开/创建文件:open()函数

#include <sys/types.h>
#include <sys/stat.h>
#include <fcutl.h>

int open(const char *pathname,int flags);
const char *pathname  要打开文件名(包含路径)
int flags             标志,指打开文件的方式
flags:
O_RDONLY  只读打开
O_WRONLY  只写打开
O_RDWR    可读可写)
以上这三个常数中应当只指定一个。下列常数是可选择的:     
        O_CREAT 若文件不存在则创建它。使用此选项时,需要同时说明第三个参数mode,
        用其说明该新文件的存取许可权限。
        O_EXCL 如果同时指定了OCREAT,而文件已经存在,则出错,返回-1。        
        O_APPEND 每次写时都加到文件的尾端。
        O_TRUNC 属性去打开文件时,如果这个文件中本来是有内容的,而且为只读或只写成功打开,
        则将其长度截短为0。


int open(const char *patname,int flags,mode_t mode);
前两个参数和上面一样
mode_t mode :一定是在flags中使用了O_CREAT标志,mode记录待创建的文件的访问权限
例:open("./file1",O_RDWR|O_CREAT,0600);//以可读可写的方式打开文件,如果没有就创
                         //建一个可读可写的文件。权限0600,6=4+2;2可写 4可读。

open函数返回的是一个文件描述符,是一个非负整数。

什么是文件描述符:对于内核而言,所有打开文件都由文件描述符引用。当打开一个现存文件或者创建一个新文件时,内核向进程返回一个文件描述符。

open函数打开文件,打开成功返回一个文件描述符,打开失败则返回-1。

下面用代码举例

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<stdio.h>
int main ()
{
        int fd;//定义一个文件标识符
        fd=open("./file1",O_RDWR);//以可读可写的方式打开
        printf("%d\n",fd);//输出文件标识符的值
        return 0;
}

在文件三种打开模式之外,还有几种模式

O_CREAT:若文件不存在则创建它

O_EXCL:如果同时制定了O_CREAT,而文件存在,则返回-1。

O_APPEND:每次写时都加到文件的尾端。

O_TRUNC:去打开问件事,如果原文件有内容,则把原文覆盖。

举例:

O_CREAT:若文件不存在则创建它


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值