最近写一个文件操作类,fopen的参数着实让我搞了半天,因为以前就是固定的方式读写文件的,现在要做灵活了,所以就有些参数理解不够准确。以下是关于mode参数的定义。

'r' 只读方式打开,将文件指针指向文件头,如果文件不存在,则File返回空。
'r+' 读写方式打开,将文件指针指向文件头,如果文件不存在,则File返回空。
'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE。
'x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE。
'b' 使用字符b作为文件类型的判断,是否是binary文件。

还有在读文件时最好先判断下该文件是否存在
bool ClassA::IsFileExisted(const char* filePath)
{
   struct stat info;
   if(stat(filePath, &info) != 0)
   {
      return false;
   }
   else
      return true;
}

fopen打开文件方式相关推荐

  1. 【Android 逆向】Android 进程注入工具开发 ( 远程进程 注入动态库 文件操作 | Android 进程读取文件所需的权限 | fopen 打开文件标志位 | 验证文件权限 )

    文章目录 前言 一.Android 进程读取文件所需的权限 二.fopen 打开文件标志位 三.验证文件权限 前言 一.Android 进程读取文件所需的权限 通过 注入工具 , 将 libbridg ...

  2. fopen -- 打开文件或者 URL

    fopen (PHP 3, PHP 4, PHP 5) fopen -- 打开文件或者 URL 说明 resource fopen ( string filename, string mode [, ...

  3. c语言编程文件打不开,c语言fopen打开文件失败的原因是什么?

    c语言fopen打开文件失败的原因是什么? 原因是:程序是以"r"的方式,也就是"读"的方式打开file.txt文件,可是程序都没有指定这个文件在哪里,程序找不 ...

  4. linux下vim 打开文件方式

    vim 打开文件方式 linux下使用vim打开文件可以使用两种方法: 一,  直接使用vim     XXX.txt   打开文件为xxx.txt的文件 二,在已经进入vim之后,要打开新的文件: ...

  5. 关于fopen打开文件失败的问题

    关于fopen打开文件失败的问题!求大佬救救小白:

  6. php 打开文件方式

    php打开文件的方式 r:只读,文件指针指向文件头 例:fopen('test.txt','r'),此时文件指针在文件头,读取文件从第一个字符处开始向后读取内容.不可写入文件.不可创建文件 r+:读写 ...

  7. python创建打开文件-python打开文件方式

    python中的open()函数用于打开一个文件,创建file对象,相关方法才可以调用它进行读写 语法:open(name,[,model[,buffering]]) 模式描述 r 以只读方式打开文件 ...

  8. python所有文件都能用文本方式打开_python 打开文件方式讲解、常用读写操作指令(全)以及读写常见问题...

    python读写方式 python的读写,在实际应用中还是很广泛的,有必要系统性的学习一下,以便于处理问题时的抉择和对现象的合理解释.例如,python用logging写入日志文件默认的读写方式是&q ...

  9. 遇到一个打开文件方式“w+”和“a+”的问题

    正在进行的项目中有个日志存储模块,需要在设备端将日志数据写到存储介质--其实就是硬盘,就是一个文件.在我测试时,发现上位机读取到的日志数据不全,明明登陆到设备看有100多KB,但读到的日志才2行,肯定 ...

最新文章

  1. 再读《数量生态学:R语言应用》
  2. jquery的$.each和$().each
  3. Android实现自定义曲线截屏,Android实现价格走势自定义曲线图
  4. 文档丨暴力破解性能问题
  5. 万达辟谣王健林去世:已报警!造谣账号已封禁
  6. Python花式编程案例集锦(8):判断吉祥数字
  7. 敲重点,数据需要这么做才能成为资产
  8. python3.7安装包下载_Python 3.7下载 Python 3.7 for win32 (Python编程开发工具)官方安装版 下载-脚本之家...
  9. php 和new date,将JavaScript new Date()转换为php DateTime()
  10. Java 常用类 -Math
  11. 【奇淫技巧】Lyndon 分治
  12. MSSQL表别名使用注意事项
  13. 全球与中国车载摄像头模块市场现状及未来发展趋势
  14. Element UI快速入门
  15. SPT20 协议_【推荐】协议离婚协议书范文7篇
  16. R语言实战(统计分析1)
  17. 信号完整性研究系列--什么是信号完整性
  18. 新学:DES加密 小知识点(S盒,初始置换)
  19. AVX 指令集并行技术优化中值滤波
  20. QC2.0/QC3.0车充设计FP6601Q应用设计多种协议快充充电器YB2416+HL6601实例设计

热门文章

  1. GitHub重磅官宣!Java开发环境搭建超全详解
  2. Win7系统安装tensorflow2.1.0报错解决方案
  3. CDGA 认证-第十二章 元数据管理(重点章节)习题集解析
  4. 记互联网创业公司二三事
  5. 前端js入门知识——JavaScript 注释
  6. FlyMCU下载hex到STM32
  7. CAD图层文件(DWG)转矢量图层处理
  8. RFC2459 Internet X.509 公钥基础设施:证书和CRL简介
  9. 写一个程序,读入秒数,然后按小时、分及秒输出。
  10. 梦幻西游服务器维修,梦幻西游:梦幻的服务器还有人在维护吗?这已经连续炸服两天了...