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++文件输入输出流的更多相关文章

  1. Java精选笔记_IO流(字符输入输出流、字符文件输入输出流、字符流的缓冲区)

    字符流 Reader是字符输入流的基类,用于从某个源设备读取字符 Writer是字符输出流,用于向某个目标设备写入字符 字符流操作文件 字符输入流FileReader,通过此流可以从关联的文件中读取一 ...

  2. java Io文件输入输出流 复制文件

    package com.hp.io; import java.io.FileInputStream; import java.io.FileNotFoundException; import java ...

  3. c++文件输入输出流fstream,对输入>>和输出<<重载

    1. fstream 继承自iostream --> 要包含头文件#include<fstream> 2. 建立文件流对象 3. 打开文件夹 4. 测试是否打开成功 5. 进行读写操 ...

  4. 文件输入输出流工具: IOUtils使用总结

    序言 以前写文件的复制很麻烦,需要各种输入流,然后读取line,输出到输出流...其实apache.commons.io里面提供了输入流输出流的常用工具方法,非常方便.下面就结合源码,看看IOUTil ...

  5. C#文件输入输出流

    从输入流中读取数据(行读取字符串) using System; using System.Collections.Generic; using System.Linq; using System.Te ...

  6. java——IObufferedReader文件输入输出流

    package com.jredu.ch02_lianxi; import java.io.BufferedReader;import java.io.BufferedWriter;import ja ...

  7. java 输入输出流1 FileInputStrem&&FileOutStream

    通过文件输入流读取问价 package unit6; import java.io.FileInputStream; import java.io.FileNotFoundException; imp ...

  8. JAVA基础-输入输出流

    一,File类:文件的创建和删除 1.File(String pathname):pathname是指路径名称.用法 File file = new File("d:/1.txt " ...

  9. c++语言的输入输出流库

    1.c++语言标准输入输出流 <1>控制符的用法 #include <iostream> #include <iomanip> using namespace st ...

随机推荐

  1. oracle查看登录到oracle服务器的客户端ip

    1. 在sys模式下创建一个表,用于记录客户端登录数据库服务器的详细信息. 1 create table login_history 2 ( 3 username varchar2(60), --用户 ...

  2. java面向对象基础复习

    对java基础的一个复习总结吧. 1.继承:通过使用关键字extends,子类可以继承父类所有的方法和属性,但是无法使用 private(私有) 的方法和属性,一次只能继承一个父类. 2.重写:重写( ...

  3. 基于七牛Python SDK写的一个批量下载脚本

    前言 上一篇基于七牛Python SDK写的一个同步脚本所写的脚本只支持上传,不支持文件下载. 虽然这个需求不太强烈,但有可能有人(在备份.迁移时)需要,而官方有没提供对应的工具,所以我就把这个功能也 ...

  4. PropertyGrid 重难点总结

    PropertyGrid的界面组成与不同部分的名称如下图所示. 本博文不算是自己写作的,只是将PropertyGrid中的几项十分有用的功能的应用方面的文字进行一下总结,希望以后大家对Property ...

  5. Zabbix 监控页面中文乱码

    问题描述: 如题,我相信大多数人都遇到过这个问题,Zabbix 监控图 中文乱码. 解决这个问题也很简单:( Zabbix 网页目录中缺少字体 ) 1.打开 Windows 的 C:\Windows\ ...

  6. PHP - 闭合标签

    最最开始的时候经常遇到这个问题,就是如果一个文件里面全部都是php代码的话,我写了前闭合和后闭合的时候,文件一多就容易报错,老是说什么有关输出的错误,貌似大概就是header已经发了. 手册上面这个样 ...

  7. 【原】Coursera—Andrew Ng机器学习—Week 9 习题—异常检测

    [1]异常检测 [2]高斯分布 [3]高斯分布 [4] 异常检测 [5]特征选择 [6] [7]多变量高斯分布 Answer: ACD B 错误.需要矩阵Σ可逆,则要求m>n  测验1 Answ ...

  8. Codeforces 76D 位运算

    题意:给你两个数x 和 y, x = a + b, y = a XOR b,问有没有合法的a和b满足这个等式? 思路:有恒等式: a + b = ((a & b) << 1) + ...

  9. SpringBoot28 RabbitMQ知识点、Docker下载RabbitMQ、SpringBoot整合RabbtiMQ

    1 RabbitMQ知识点 1.1 整体架构图 消息生产者将消息投递到exchange中,exchange会以某种路由机制将生产者投递的消息路由到queue中,消息消费者再从queue中获取消息进行消 ...

  10. AJAX(XMLHttpRequest)进行跨域请求方法详解

    AJAX(XMLHttpRequest)进行跨域请求方法详解(三) 2010年01月11日 08:48:00 阅读数:24213 注意:以下代码请在Firefox 3.5.Chrome 3.0.Saf ...