C/C++文件输入输出流
| C++方式 | C方式 | ||
| 头文件 | fstream | stdio.h | |
| open | file.open(const char *filename,const char *mode) | FILE* fopen(const char *filename,const char | |
| mode | 只读 | ios::in | r |
| 只写 | ios::out | w | |
| 文件末尾 | ios::ate | a | |
| 附加 | ios::app | a+ | |
| 存在则删除 | ios::trunc | w+ | |
| 不存在则创建/存在则失败 | ios::noreplace | ||
| 不存在则失败 | ios::nocreate | r+ | |
| 二进制方式 | ios::binary | b | |
| 文本方式 | default | t//default | |
| 检测 | 返回值 | file.is_open() | |
| 返回值 | 成功 | 1 | FILE* fp |
| 失败 | 0 | NULL | |
| 按字符读写 | 读取 | char file.get()/bool file.get(ch) | char fgetc(FILE* fp) |
| 写入 | file.putback() | fput(char ch,FILE* fp) | |
| 读取整行 | 清空缓存 | file.getline(char *buffer,int ncount,char delim='\n') | |
| 保留缓存 | file.get(char *buffer,int ncount,char delim='\n') | char *fgets(char *buf, int bufsize, FILE *stream); | |
| 写入整行 | fputs(FILE *fp,char *str) | ||
| 文件尾部 | 到达返回1,否则返回0 | file.get()==EOF/file.peek()==EOF | int feof(FILE* fp) |
| 按格式读写 | 读取 | file<<arguments | fscanf(FILE*fp,const char format,&argument) |
| 写入 | file>>buffer | fprint(FILE*fp,const char format,argument) | |
| 操作符 | 换行 | endl | \n' |
| 结束字符串 | ends | \0' | |
| 二进制方式读写 | 读取 | file.read(char * str,size) | size_t fread( void *buffer, size_t size, size_t count, FILE *stream );返回成功的块数 |
| 写入 | file.write(char * str,size) | size_t fwrite( void *buffer, size_t size, size_t count, FILE *stream );返回成功的块数 | |
| 位置移动 | 读取方式 | seekp(size,mode)//操纵同一个指针 | fseek(FILE*fp,size,mode)//成功返回0,失败返回非零 |
| 写入方式 | seekg(size,mode)//操纵同一个指针 | ||
| 移动方式 | 当前位置 | ios::cur | SEEK_CUR |
| 从文件开头 | ios::beg | SEEK_SET | |
| 从文件末尾 | ios::end | SEEK_END | |
| 指针复位 | 遇到EOF之后不再有效,需要重新打开文件 | file.seekg(0)/file.seekp(0) | void rewind(FILE*fp) |
| 求当前位置 | 读取 | pos_type file.tellp() | long ftell(FILE*fp) |
| 写入 | pos_type file.tellg() | ||
| 关闭文件 | file.close() | int fclose(FILE *fp) | |
| tellg返回指针所在的位置数,windows将换行符\n处理为两个字符 | |||
点击右键选择在新标签页查看图片以获得清晰图片

C/C++文件输入输出流的更多相关文章
- Java精选笔记_IO流(字符输入输出流、字符文件输入输出流、字符流的缓冲区)
字符流 Reader是字符输入流的基类,用于从某个源设备读取字符 Writer是字符输出流,用于向某个目标设备写入字符 字符流操作文件 字符输入流FileReader,通过此流可以从关联的文件中读取一 ...
- java Io文件输入输出流 复制文件
package com.hp.io; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...
- c++文件输入输出流fstream,对输入>>和输出<<重载
1. fstream 继承自iostream --> 要包含头文件#include<fstream> 2. 建立文件流对象 3. 打开文件夹 4. 测试是否打开成功 5. 进行读写操 ...
- 文件输入输出流工具: IOUtils使用总结
序言 以前写文件的复制很麻烦,需要各种输入流,然后读取line,输出到输出流...其实apache.commons.io里面提供了输入流输出流的常用工具方法,非常方便.下面就结合源码,看看IOUTil ...
- C#文件输入输出流
从输入流中读取数据(行读取字符串) using System; using System.Collections.Generic; using System.Linq; using System.Te ...
- java——IObufferedReader文件输入输出流
package com.jredu.ch02_lianxi; import java.io.BufferedReader;import java.io.BufferedWriter;import ja ...
- java 输入输出流1 FileInputStrem&&FileOutStream
通过文件输入流读取问价 package unit6; import java.io.FileInputStream; import java.io.FileNotFoundException; imp ...
- JAVA基础-输入输出流
一,File类:文件的创建和删除 1.File(String pathname):pathname是指路径名称.用法 File file = new File("d:/1.txt " ...
- c++语言的输入输出流库
1.c++语言标准输入输出流 <1>控制符的用法 #include <iostream> #include <iomanip> using namespace st ...
随机推荐
- vue之slot,组件标签嵌套
vue之slot,组件标签嵌套 插槽(Slot),在各种vue的ui插件中,经常见到的多个组件标签相互嵌套(如下)就是以此为基础的. <el-col > <el-checkbox & ...
- TBluetoothLE.OnDisconnectDevice
自己作为广播方,连接我的设备断开收到的事件. TBluetoothLE.OnDisconnectDevice TBluetoothLEDevice BluetoothLE1->Discovere ...
- 更改AD域安全策略-密码必须符合复杂性要求
在域环境中,修改域用户密码时,会提示不符合密码策略, 更改"本地安全策略"是不会对域产生任何的作用的. 上图中可以看,这里按钮都是灰色的! 下面这个步骤教你如何找到"域安 ...
- MPEG-2码流结构分析
MPEG2视频编码定义在 ISO/IEC13818-2中,MPEG2 video sequence如下图所示 我们可以借助Elecard Stream Analyer工具来分析MPEG2视频码流 MP ...
- Django 获取时间 和Linux 本地 系统时间 不一致
问题描述 Django 中获取的本地时间 ,和系统时间不一致 错误原因 Django在配置文件settings.py 中 默认配置 UTC世界标准时间,而北京时间是东八区,比UTC时间早8个小时. T ...
- python:窗口化和制作图形
#圆 from tkinter import * canvas = Canvas(width=800, height=600, bg='yellow')#声明窗口属性 canvas.pack(expa ...
- UGUI BUG
UNITY UGUI问题:父类使用 GroupLayout,子类使用contentsize filter时,会出现运行时布局重叠,但隐藏后再显示就会好了.
- 当一个项目中同时存在webroot和webcontext时
当一个项目中同时存在webroot和webcontext时,注意一定要删除那些没在使用的.还有要发布其中一个想要的目录到服务器中,具体方法是 选择相应工程-----properties-----de ...
- 2018-2019第一学期Java助教心得
随着期末考试落下了帷幕,本学习也结束了回顾本学期的历程,对我影响最深的还是这学期很幸运的成为代老师的助教,这也是我第一次接触助教工作.刚开始的时候我心里也有很多的担心,怕自己胜任不了这份工作,但随着时 ...
- 微信小程序相关三、css写小黄人
小程序上课第三天,因为今天院里有活动,所以没去上课,第四天上午又因为要召开入党转正大会,又耽误了一上午,下午去上课,要了资料.这两天讲了一些零零碎碎的东西,做的实例有上面这个小黄人 都是用的css,基 ...