美文网首页
系统编程-------文件操作

系统编程-------文件操作

作者: Hassan_chao | 来源:发表于2017-01-09 08:09 被阅读7次

文件的操作

1、文件打开

使用open函数打开和创建函数

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int open(const char *pathname, int flags);
int open(const char *pathname, int flags, mode_t mode);

参数:

  • pathname 待打开文件路径
    • flags 打开模式
      • mode 仅在 flags参数中含有O_CREAT时有效,设定新文件的打开权限

返回值:

​ 打开成功,返回文件描述符;失败,返回-1

使用create函数创建文件并打开

int creat(const char *pathname, mode_t mode);

参数:

  • pathname 带创建的文件名(可携带路径)
  • mode 创建文件的权限

返回值:

​ 打开的文件描述

2、读写文件

>### 使用read函数从文件中读取数据
#include <unistd.h>ssize_t read(int fd, void *buf, size_t count);

参数:

  • fd提供数据的文件的描述符,读取的数据来源

  • buf读到的数据所存放的内存空间的起始地址

  • count想要读取的数据的字节数,也是提供的存储空间字节数

    返回值:

返回实际读取的字节数([0,count]区间变化)。返回0,表示读取到了文件的尾部;读取失败,返回-1;

使用write函数向指定文件中写入数据

#include <unistd.h>
ssize_t write(int fd, const void *buf, size_t count);

参数:

  • fd待写入数据的文件描述符
  • buf写入数据的起始地址
  • count 待写入的数据字节数

返回值:成功,返回实际写入字节数;失败返回-1.

定位文件

使用lseek函数定位指定已打开文件的读写指针

#include <sys/types.h>
#include <unistd.h>off_t lseek(int fd, off_t offset, int whence);

参数:

  • fd待重建定位读写指针位置的文件描述符
  • offset读写指针的偏移量(可正可负可为0)
  • whence读写指针的偏移位置
SEEK_SET  相对文件首部偏移
SEEK_CUR    相对文件当前读写位置偏移

相关文章

  • 进程线程-导读

    一:引出 进程线程与文件IO一起,一般也叫做系统编程,系统编程,顾名思义,就是与操作系统有关系的编程,那么系统编程...

  • 系统编程-文件操作

    系统调用 系统调用主要进行进程控制(系统调用是系统提供用户的一个接口) flag:O_RDONLY,O_WRONL...

  • 系统编程-------文件操作

    文件的操作 1、文件打开 使用open函数打开和创建函数 参数: pathname 待打开文件路径fla...

  • 2018-02-11 mac 系统的中常见命令行教程

    mac 系统的中常见命令行教程 目录操作 文件操作 选择操作 安全操作 编程操作 进程操作 时间操作 网络与通信操...

  • (五)Python File(文件)

    前言:文件系统是操作系统的重要组成部分,它规定了计算机对文件和目录进行操作处理的各种标准和机制。以此为基础,编程语...

  • 系统编程-文件操作3

    作业:在文件任意位置处插入数据 ACCESS(测试) 测试文件是否存在 测试文件是否有可读可写权限 测试文件是否有...

  • 系统编程-文件操作2

    作业 文件的拷贝 readFromSTDIN readFromSTDIN_NoBlock eintr 学生结构体,...

  • 系统编程-文件操作4

    exec(鸠占鹊巢) 查找文件:fins /usr execl 模拟一个终端,可以同时打开两个文件 模拟一个终端 ...

  • 系统编程-文件操作5

    作业 通过无名管道,让两个子进程间完成相互通信工作 命名管道 创建一个命名管道 在命名管道里插入数据 首先在一个终...

  • Bash编程014——文件管理

    Bash编程014——文件管理 Unix/Linux系统中将几乎一切都是为文件,所有操作都离不开文件,因而学习管理...

网友评论

      本文标题:系统编程-------文件操作

      本文链接:https://www.haomeiwen.com/subject/xrtcbttx.html