#include<iostream>
#include<fstream>
#include<string>
using namespace std; int main(){
ofstream outFile("d:\\test.txt",ofstream::out|ofstream::app);
if(!outFile){cout<<"Open file failed !"<<endl; }else{cout<<"Open file suc!"<<endl;
}
//写入固定的str
outFile<<"First!"<<endl;
//键入文件
char ch;
while(cin.get(ch)){
if(ch == '\n')break;
outFile.put(ch);
}
outFile.close(); ifstream readFile("d:\\test.txt",ios::in);
if(!readFile){cout<<"read error!";return 0;
} else cout<<"read suc"<<endl;
//读取文本中所有的内容
char c;
readFile.get(c);
cout<<"get-------------->"<<c<<endl;
char str[100];
while(readFile.getline(str,100)) {
cout<<str<<endl;
}
readFile.close(); //binary二进制形式传送和存储。用read函数和write函数
// read(char *buf,int len); write(const char *buf,int len); fstream binaryFile("d:\\test.txt",ios::out|ios::binary|ios::in);
if(!binaryFile){cout<<"read error!";return 0;
} else cout<<"read suc"<<endl;
char arr[13] = "hello world!";
binaryFile.write(arr,13);
binaryFile.seekg(ios::beg);// 定位至文件首部
char read_array[13] ;
binaryFile.read(read_array,13);
cout<<"----------"<<read_array;
binaryFile.seekg(0,ios::beg); //tellg()//返回输入文件读指针的当前位置;  
//seekg(文件中的位置)//将输入文件中的读指针移动到指定位置
//seekg(位移量,参照位置)//以参照位置为基准移动若干字节
//beg//从文件开头计算要移动的字节数
//cur//从文件指针的当前位置计算要移动的字节数
//end//从文件的末尾计算要移动的字节数
//一个回车键占2个字符
// fstream binaryReadFile("d:\\test.txt",ios::out|ios::binary|ios::in);
binaryReadFile.write(arr,12);
auto length = binaryReadFile.tellg();cout<<"length ----->"<<length<<endl;
char *buff = new char[length];
binaryReadFile.seekg(ios::beg);
static char read_array1[10]; // 在此我将打算读出些数据 binaryReadFile.read(read_array1,3); // 读出前三个字符——"Hel" cout <<"read_array is ------>" <<read_array1 << endl;
binaryReadFile.read(buff,length);
cout<<"buff is ------>"<<buff<<ends;
binaryReadFile.close(); return 0;
}

  写的很乱,基本就是put,get,getline,write,read等的用法,及其中的一些相关参数。仅此记录吧。

c++PrimerChap8IO库的更多相关文章

  1. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

  2. TinyWeb v1.0 正式完成第一个Release版本(功能基于 libuv 跨平台库)

    使用方法很简单,很容易融入现有项目,使现有项目拥有Web网站功能和WebSocket,以及Socket直连! 并且包含了一个跨平台(windows/linux)工具集合; 嗯,也挺棒的^,^ 在项目中 ...

  3. 在 Laravel 中使用图片处理库 Integration/Image

    系统需求 PHP >= 5.3 Fileinfo Extension GD Library (>=2.0) … or … Imagick PHP extension (>=6.5.7 ...

  4. [APUE]标准IO库(下)

    一.标准IO的效率 对比以下四个程序的用户CPU.系统CPU与时钟时间对比 程序1:系统IO 程序2:标准IO getc版本 程序3:标准IO fgets版本 结果: [注:该表截取自APUE,上表中 ...

  5. [APUE]标准IO库(上)

    一.流和FILE对象 系统IO都是针对文件描述符,当打开一个文件时,即返回一个文件描述符,然后用该文件描述符来进行下面的操作,而对于标准IO库,它们的操作则是围绕流(stream)进行的. 当打开一个 ...

  6. Python标准库--typing

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 模块简介 Python 3.5 增加了一个有意思的库--typ ...

  7. Windows 常用运行库下载 (DirectX、VC++、.Net Framework等)

    经常听到有朋友抱怨他的电脑运行软件或者游戏时提示缺少什么 d3dx9_xx.dll 或 msvcp71.dll.msvcr71.dll又或者是 .Net Framework 初始化之类的错误而无法正常 ...

  8. vs2010静态链接MFC库报链接错误

    由于需要将MFC程序在其它电脑上运行,所以需要将动态链接的MFC改成静态链接,本以为很简单,没想到链接的时候出现下面的链接错误: uafxcw.lib(afxmem.obj) : error LNK2 ...

  9. Android 5.0 到 Android 6.0 + 的深坑之一 之 .so 动态库的适配

    (原创:http://www.cnblogs.com/linguanh) 目录: 前序 一,问题描述 二,为何会如此"无情"? 三,目前存在该问题的知名SDK 四,解决方案,1 对 ...

随机推荐

  1. LeetCode Golang 7. 整数反转

    7. 整数反转 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. Tips : Math包给出的类型大小的边界: // Integer limit values. const ...

  2. Linux网络配置、文件及命令

    Linux的网络配置是曾一直是我学习Linux的埋骨之地,投入了大量的精力和心神但是自己的虚拟机就是联不了网.原来一个大意,我一躺就是一年半.在这里简单的谈谈我对网络的微微认识. VMware的联网模 ...

  3. vue 移动端项目,动态控制div距离底部的距离

    <template> <div class="details"> <com-nav-bar title="保险详情"> &l ...

  4. HYSBZ-1566 管道取珠 区间dp

    题目链接:https://cn.vjudge.net/problem/HYSBZ-1566 题意 思路 已经说了,面对\sum a^2的时候把状态分两个, 当这两个状态相同时,满足题意的方案数即变为a ...

  5. 【bzoj 1502】月下柠檬树

    月下柠檬树 题意 求n个圆与他们的公切线的定积分. 解法 求出圆的公切线就可以了. 特别坑的一点 : 最两端的圆,有可能会被其他的圆所包含,所以要重新求一下最左端与最右端. 比较坑的一点 : 精度要设 ...

  6. linux下为firfox安装flash player

    1.去官网下载×.tar.gz包,如:flash_player_npapi_linux.x86_64.tar.gz 2.解压 tar -zxvf flash_player_npapi_linux.x8 ...

  7. Django -聚合分组,FQ操作, cookie, session

    一. 聚合查询和分组 1. 聚合 aggregate(*args, **kwargs) 对一组数据进行统计分析, 通过对QuerySet进行计算, 返回一个聚合值得字典. arrgregate()中每 ...

  8. 表单标签 fieldset legent

    书写表单时可以提供简单样式的标签 <fieldset> <legent></legent> <input type="text" > ...

  9. visual studio 2015将已有项目添加到码云(gitee)

    visual studio 2015将已有项目添加到码云的步骤包括:gitee新建项目.清空项目及VS发布项目 1.gitee新建项目 2.清空项目 清空项目则会将vs项目的master分支发布到gi ...

  10. ASP.NET-服务器客户端的信息保持

    ASP.NET客户端和服务器端的信息保持方案 来自为知笔记(Wiz)