2.1 打开文件和关闭文件

  1. #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
 头文件
int open(const char *pathname, int flags); 打开一个文件
int close(int fildes); 关闭一个文件
  1.  
  1. 1.打开文件
  1. int open(const char *pathname, int flags);
  2. //const char *pathname 是要打开的文件路径
  3. //int flag 是文件打开的标志 。 标志有 主标志 和 副标志 。
  1. // 主标志是互斥的。三选一
  2. // O_RDONLY 只读方式打开
  3. // O_RDWR  读写方式打开
  4. // O_WRONLY 只写方式打开
  1. // 副标志可以多选
  2. // O_APPEND 读写文件从文件末尾处追加
  3. // O_TRUNC 若文件存在并可写,则用清空的方式打开文件
  4. // O_CREAT 若文件不存在,则创建该文件
  5. // O_EXCL ??

  6. // 如果用O_CREAT 方式创建不存在的文件, open则需要额外设置文件权限
  7. int open(const char *pathname, int flags, mode_t mode);
  8. //mode_t mode 用0755 或者其他权限写入即可 .
  1. //创建文件的另一个函数,用法同open
  2. int creat(const char* pathname, mode_t mode);
  1.  
 
  1.  
  2. 2.关闭文件
  1. // 在使用完文件后,必须正常关闭文件!!
  2.  
  3. close(int fildes);
  1.  
  2. 举个栗子:
  1. /*
  2.  
  3. ============================================================================
  4. Name : hello.c
  5. Author :
  6. Version :
  7. Copyright : Your copyright notice
  8. Description : Hello World in C, Ansi-style
  9. ============================================================================
  10. */

  11. #include <stdio.h>
  12. #include <stdlib.h>
  13. #include <fcntl.h>   //open
  14. #include <unistd.h>  //close

  15. int main(void)
  16. {
  17.   int fd;
  18.   const char* file="./hello";  //当前文件夹下的hello文件

  19.   fd=open(file, O_RDWR);     //先以读写方式打开
  20.   if(fd<)              //如果该文件不存在,打开失败了
  21.   {
  22.     puts("no such file .");
  23.     fd=open(file,O_RDWR|O_CREAT,);  //就加入创建副属性
  24.     if(fd<)
  25.     {
  26.       puts("open file err !");
  27.       return-;
  28.     }
  29.   }
  30.   puts("open file success .");

  31.   close(fd);                //最后记得关闭文件流
  32.   puts("close file success .");
  33.   return ;
  34. }
  1.  

linux文件操作篇 (二) 打开和关闭文件的更多相关文章

  1. linux文件IO操作篇 (二) 缓冲文件

    2. 缓冲文件操作 //规模较大 实时性低的文件 //当数据长度快要超过缓冲区的范围时,或者时间周期达到时,数据才被送往指定位置 //需要使用FILE * 作为文件标识符 //stdin 标准输入 / ...

  2. python04篇 文件操作(二)、集合

    一.文件操作(二) 1.1 利用with来打开文件 # with open ,python 会自动关闭文件 with open('a.txt', encoding='utf-8') as f: # f ...

  3. 文件操作篇 close creat dup dup2 fcntl flock fsync lseek mkstemp open read sync write

    文件操作篇 close creat dup dup2 fcntl flock fsync lseek mkstemp open read sync write close(关闭文件) 相关函数 ope ...

  4. ansible笔记(5):常用模块之文件操作(二)

    ansible笔记():常用模块之文件操作(二) 文件操作类模块 find模块 find模块可以帮助我们在远程主机中查找符合条件的文件,就像find命令一样. 此处我们介绍一些find模块的常用参数, ...

  5. Python打开和关闭文件

    Python打开和关闭文件: open(文件名,打开文件的模式[,寄存区的缓冲]): 文件名:字符串值 注:文件名带有后缀名 # 打开创建好的 test.txt 文件 f = open("t ...

  6. 重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作

    原文:重新想象 Windows 8 Store Apps (24) - 文件系统: Application Data 中的文件操作, Package 中的文件操作, 可移动存储中的文件操作 [源码下载 ...

  7. linux文件操作篇 (四) 目录操作

    #include <sys/stat.h>#include <unistd.h>#include <dirent.h> //创建文件夹 路径 掩码 int mkdi ...

  8. PHP怎么打开或者关闭文件?

    什么是文件处理? 文件处理包括读取,关闭,重写等.掌握文件的处理需要读者理清思路,掌握好文件处理的关键步骤和常用函数,那么就可以运用自如了!感兴趣的请移步php文件处理专题. 比如,访问一个文件需要 ...

  9. C++文件操作(输入输出、格式控制、文件打开模式、测试流状态、二进制读写)

    1.向文件写数据 头文件#include <ofstream> ①Create an instance of ofstream(创建ofstream实例) ②Open the file w ...

随机推荐

  1. msysGit删除github文件

    首先打开msysGit命令行工具 首先使用命令 git rm xxx 删除远程文件 提交删除操作 git commit -m "test" ,并推送到远程仓库 git push o ...

  2. 【bzoj2563】 阿狸和桃子的游戏

    题目 非常妙的题目,一看到就以为是一道博弈,之后就不会做了 正解非常巧妙,由于我们只需要求出最后两个人得分的差值,所以对于每一条边我们将其的权值拆成两边,分给其连接的两个点 如果这两个点被同一个人选择 ...

  3. 如何在vue2.0项目中引用element-ui和echart.js

    1 项目中怎样添加elment-ui 和 echart.js 1.1直接在packjson 里面的 dependencies 配置 "element-ui": "^1.3 ...

  4. Struts2学习笔记——Struts2搭建和第一个小程序

    1.新建web项目 2.配置Struts2核心过滤器 (1)打开web.xml文件,做以下配置: <?xml version="1.0" encoding="UTF ...

  5. JS获取浏览器高度和宽度

    IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.d ...

  6. struts2 实现文件下载方法汇总

    http://pengranxiang.iteye.com/blog/259401 一.通过struts2提供的下载机制下载文件: 项目名为 struts2hello ,所使用的开发环境是MyEcli ...

  7. 深入PHP中的引用

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[-] 简单变量引用 对象引用 函数参数传递 函数返回引用   虽然常说做C/C++编程的程序员转做PHP编程很快可以上手,但是对于 ...

  8. Java虚拟机垃圾回收:基础点(转载)

    1.Java虚拟机垃圾回收 垃圾回收,或称垃圾收集(Garbage Collection,GC)是指自动管理回收不再被引用的内存数据. 在1960年诞生于MIT的Lisp语言首次使用了动态内存分配和垃 ...

  9. 菜鸟笔记 -- Chapter 09 常见类和接口

    Java为我们提供了丰富的jar包支持,这其中很多都是我们日常开发所必须的,了解这些包和类,十分有助于我们的开发,深度了解源代码也有助于我们代码的优化和提高;JDK1.8为我们提供了多于4000个类与 ...

  10. 菜鸟笔记 -- Chapter 6.2.2 标识符

    6.2.2  标识符 Java中使用标识符来作为类.方法.字段的名称,在Java基础中我们已经简单了解过标识符的定义方法和驼峰命名.本节我们来研究一下标识符的长度问题,难道类名.方法名都可以无限长吗? ...