当前位置: 首页 > news >正文

day26- 系统编程之 文件IO(II) 及 文件属性

一、文件IO函数(续)

1.1 lseek函数:(与fseek用法相似)

off_t lseek(int fd, off_t offset, int whence);

功能:
            定位光标的位置
参数:
            fd:文件描述符
            offset:偏移量

1.2 fileno函数

int fileno(FILE *stream);

功能:
    获得一个文件流指针中的文件描述符
参数:
    stream:文件流指针
返回值:
    成功返回文件描述符
    失败返回-1

1.3 fdopen函数

FILE *fdopen(int fd, const char *mode);
  • 功能:

            将文件描述符转化为文件流指针

  •  参数:

            fd:已经打开的文件描述符
            mode:
                "r"
                "r+"
                "w"
                "w+"
                "a"
                "a+"

  •  返回值:

            成功返回文件流指针
            失败返回NULL    

1.4 perror函数(系统级别报错函数)

void perror(const char *s);标识性信息,写对应的函数,如fopen main.c;10

      作用是将上一个函数发生错误的原因输出到标准错误输出(stderr)

      适用于man2、man3的函数使用,第三方库就不行;

1.5 文件权限

fopenopen
wO_WRONLY|O_CREAT|O_TRUNC 
w+O_RDWR|O_CREAT|O_TRUNC 
rO_RDONLY 
r+O_RDWR
aO_WRONLY|O_CREAT|O_APPEND
a+O_RDWR|O_CREAT|O_APPEND

二、 目录(只读)

.和..为隐藏目录,任何目录下都存在.和..

2.1 操作步骤

        1,打开目标目录 opendir
        2.读取目录        readdir
        3.关闭目录         closedir

目录 当文件看,只不过操作函数和操作文件函数不一样

         DIR表示目录流指针

        direntry表示一次取整体目录的一条

2.2 相关函数

2.2.1 opendir函数

DIR *opendir(const char *name);

返回值:成功,返回目录流指针;否则,返NULL;

2.2.2 readdir函数

struct dirent *readdir(DIR *Dirp);

struct dirent的结构体:

        其中,我们可能使用:

char d_name[256];                        //文件名

unsigned char d_type;                  //文件类型

        文件类型:

块设备,存储类,硬盘、光盘等
字符设备,如鼠标、键盘等
目录
管道
符号链接也称软连接,与windows的桌面快捷方式类似
普通文件
网络文件
不认识

 

2.2.3 closedir函数

int closedir(DIR *dirp);

2.3 时间函数

2.3.1 time函数//秒数 

time_t time(time_t *tloc);

若传入NULL,返回秒数 

 2.3.2 localtime函数//日期

struct tm *localtime(const time_t *timep);

 

三、总结

 

 

相关文章:

  • DeepSeek:开启IT领域人效管理新时代
  • 【无标题】西门子S7-1500PLC与西门子V90 PN伺服通讯控制项目程序项目程序,共有8轴,编码器信号直接输入到变频器内。
  • win11远程桌面设置60fps无效
  • 12kV 环保气体绝缘交流金属封闭开关设备现场交流耐压试验规范
  • 「Python教案」运算符的使用
  • 【详解自定义类型:联合和枚举】:联合体类型的声明、特点、大小的计算,枚举类型的声明、优点和使用
  • 2023河南CCPC省赛vp部分补题
  • [Java恶补day3] 128. 最长连续序列
  • 【C语言】复习~动态内存管理
  • python线性回归
  • 国标GB28181设备管理软件EasyGBS视频监控系统打造工厂可视化监管场景解决方案
  • HTML应用指南:利用POST请求获取全国中通快递服务网点位置信息
  • 使用Python复制Word文档样式并生成新文档
  • 【调优】Java 调优学习笔记之字符串
  • Python unittest
  • ProtoBuffer在Android端的编译
  • 若依代码生成
  • 一文读懂GRPC
  • STM32之温湿度传感器(DHT11)
  • python 实现 web 请求与相应
  • 枣庄网站建设.com/营销型网站推广
  • 汕头企业网站建设服务/qq群排名优化软件官网
  • 六安网站定制/郑州网站制作公司
  • 厦门网站建设seo/网站建设平台
  • 深圳高端营销网站模板/2024年的新闻时事热点论文
  • 昌平装修公司哪家好/seo排名优化软件有