//从键盘输入到程序,叫标准input;从程序输出到显示器,叫标准output;一并叫标准I/O

//文件的输入和输出,叫文件I/O

cout<<"hellow word";//不加上<<endl;实际上只会先放到缓冲区

char ch=cin.get();//读取一个字符

int main()

{

  char ch2;

  cin.get(ch2);//会从缓冲区取走1个字符,如果没有会阻塞

  char buf[256];

  cin.get(buf,256);//会从缓冲区读

  cin.getline(buf,256);

    char a= cin.peek();//窥探一下缓冲区,复制第一个字符出来

}

文件操作:

ifstream,继承istream

ofstream,继承ostream

//和C#一样,通过流读写文件,但是C#通过FileStream的创建,用参数控制就可以了。

读文件操作

#include <fstream>

void CopyFile()

{

  char* fileName="C:\\Users\\Destop\\souce.txt";

  char* outputfileName= "C:\\Users\\Destop\\target.txt";

  ifstream ism(fileName,ios::in); //有参构造,以只读方式打开文件

  ostream osm(outputfileName,ios::out);//只写

  //ostream osm(outputfileName , ios::out | ios::app);//只写,并且在文件末尾追加

  //或者先无参构造,然后ism..open(fileName,ios::in);

  if( !ism )//肯定重载了“!”操作符

  {

    cout<<"打开失败"<<endl;

    return;

  }

  char ch;

  while(ism.get(ch))

  {

    osm.put(ch);

  }

  ism.close();//关闭

  osm.close();//关闭

}

二进制文件操作:对象序列化

class Person

{

  public :

    int age;

    int id;

    Person(int age,int id);

    Person();

}

void WritePerson()

{

  Person p1(10,20),p2(20,10);;

  char* outputfileName= "C:\\Users\\Destop\\target.txt";

  ostream osm(TargetName,ios::out | ios::binary);//以二进制的方式写

  osm.write((char*)&p1,sizeof(Person));//专门以二进制的方式写

  osm.write((char*)&p2,sizeof(Person));//将第二个对象也写进去

  osm.close();

}

void ReadPerson()

{

  char* outputfileName= "C:\\Users\\Destop\\target.txt";

  ifstream ism(outputfileName, ios::in | ios::binary);//以二进制方式读。

  Person p1,p2;

  ism.read((char*)&p1,sizeof(Person));

  ism.read((char*)&p2,sizeof(Person));

  ism.close();

}

C++学习笔记10_输入输出流.文件读写的更多相关文章

  1. C学习笔记(8)--- 文件读写

    1.C 文件读写: 一个文件,无论它是文本文件还是二进制文件,都是代表了一系列的字节.C 语言不仅提供了访问顶层的函数,也提供了底层(OS)调用来处理存储设备上的文件. a.打开文件: FILE *f ...

  2. c++学习笔记01-输入输出流&&文件输入输出操作

    const int size=50等于#define size 50 字符串默认以0结尾: 一.输入输出流 cin.get()会从输入中取走一个字符: cin.peek()会从输入中检测第一个字符: ...

  3. java 学习笔记之 流、文件的操作

    ava 学习笔记之 流.文件的操作 对于一些基础的知识,这里不再过多的解释, 简单的文件查询过滤操作 package com.wfu.ch08; import java.io.File; import ...

  4. 【转】iphone 输入/输出流异步读写数据

    原文:iphone 输入/输出流异步读写数据 分类: iphone2012-05-30 14:50 2484人阅读 评论(1) 收藏 举报 iphoneattributesinterfacepaths ...

  5. Java NIO 学习笔记(四)----文件通道和网络通道

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  6. python学习笔记(六)文件夹遍历,异常处理

    python学习笔记(六) 文件夹遍历 1.递归遍历 import os allfile = [] def dirList(path): filelist = os.listdir(path) for ...

  7. C++学习笔记之输入、输出和文件

    一.流的概念 数据从内存的一个地址移动到另一个地址称为数据流动——流操作 流操作是通过缓冲区(buffer)机制实现的. 缓冲区:内存的一块区域——用作文件与内存交换数据. 数据从文件中读出:文件 → ...

  8. tensorflow学习笔记——多线程输入数据处理框架

    之前我们学习使用TensorFlow对图像数据进行预处理的方法.虽然使用这些图像数据预处理的方法可以减少无关因素对图像识别模型效果的影响,但这些复杂的预处理过程也会减慢整个训练过程.为了避免图像预处理 ...

  9. AntDesign vue学习笔记(七)Form 读写与图片上传

    AntDesign Form使用布局相比传统Jquery有点繁琐 (一)先读写一个简单的input为例 <a-form :form="form" layout="v ...

随机推荐

  1. [ngclass]、[ngstyle]、管道

    [ngclass] 动态改变一个元素的class ts: public classcolor:boolean=false; public list:any = [{title:"新闻1&qu ...

  2. Docker 网易镜像仓库使用

    Docker 网易镜像仓库使用: 网易账号注册: https://id.163yun.com/register?h=fc&referrer=https://console.163yun.com ...

  3. Java 学习笔记之 线程脏读

    线程脏读: 发生脏读的情况是在读取实例变量时,值已经被其他线程更改过了. public class DirtyReadVar { public String username = "A&qu ...

  4. Python入门系列【附】进阶教程

    如题,本篇将讲解Python提升之路:Python作为语法简单易学的语言,入门容易精通却很难,这是共识,那么为什么会有这样的共识?精通Python的难度在哪里? Python拥有简单.形象.直观的语法 ...

  5. 【SQL】 收入支出求盈亏

    求项目ID为1000的盈亏 表名为:T 字段:ID    P_ID   AMOUNT   TYPE(1:收入 2:支出) '

  6. git一步步上传自己的项目至github,及仓库更新

    一.使用git上传项目到github 首先登陆github账号,选择新建一个库,填写项目名称,描述 创建完成之后,跳转到下面的页面,下面红框中的网址要记住,在后面上传代码的时候需要使用 接下来,我们需 ...

  7. 02-14 scikit-learn库之逻辑回归

    目录 scikit-learn库之逻辑回归 一.LogisticRegression 1.1 使用场景 1.2 代码 1.3 参数详解 1.4 属性 1.5 方法 二.LogisticRegressi ...

  8. 02-17 kd树

    目录 kd树 一.kd树学习目标 二.kd树引入 三.kd树详解 3.1 构造kd树 3.1.1 示例 3.2 kd树搜索 3.2.1 示例 四.kd树流程 4.1 输入 4.2 输出 4.3 流程 ...

  9. python编程基础之三十四

    面向对象:三大特征:封装,继承,多态 封装:隐藏对象的实现过程,对外仅仅公开接口,控制在程序中的读取和修改的访问级别 类,函数都是一种封装 属性私有化:当类里面的属性不想被外部访问,可以将这些属性设置 ...

  10. 局部敏感哈希LSH(Locality-Sensitive Hashing)——海量数据相似性查找技术

    一. 前言     最近在工作中需要对海量数据进行相似性查找,即对微博全量用户进行关注相似度计算,计算得到每个用户关注相似度最高的TOP-N个用户,首先想到的是利用简单的协同过滤,先定义相似性度量(c ...