第15周-二进制文件与字符串流-项目0-课后实践·阅读程序(3)
来源:互联网 发布:2016年淘宝用户数量 编辑:程序博客网 时间:2024/05/24 06:32
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:刘畅* 完成日期:2015 年 6 月 13 日 * 版 本 号:v1.0 * * 问题描述:阅读下面的程序,指出其功能,体会seekg()、tellg()等函数的功能及其用法 。* 输入描述:自动输入;* 程序输出:文本输出:
(1)
#include<iostream>#include <fstream>using namespace std;const char * filename = "a.txt";int main (){ long l,m; ifstream file (filename, ios::in|ios::binary); l = file.tellg(); file.seekg (0, ios::end); m = file.tellg(); file.close(); cout << "size of " << filename; cout << " is " << (m-l) << " bytes.\n"; return 0;}
运行结果:
(2)
#include <fstream>using namespace std;int main (){ long pos; ofstream outfile; outfile.open ("test.txt"); outfile.write ("This is an apple",16); pos=outfile.tellp(); outfile.seekp (pos-7); outfile.write (" sam",4); outfile.close(); return 0;}
运行结果:
(3)
#include <iostream> #include <fstream> using namespace std;int main() { fstream outfile,infile; outfile.open("data.txt",ios::out); for (int i=0;i<26;i++) outfile<<(char)('A'+i); outfile.close(); infile.open("data.txt",ios::in); char ch; infile.seekg(6,ios::beg); if(infile.get(ch)) cout<<ch; infile.seekg(8,ios::beg); if(infile.get(ch)) cout<<ch; infile.seekg(-8,ios::end); if(infile.get(ch)) cout<<ch; cout<<endl; infile.close(); return 0; }
运行结果:
学习心得:
tellg() 得到输入文件位置标记的当前位置。
seekg(位移量,参照位置) 以参照位置为基础移动若干字节
seekp(文件中的位置) 将输出文件位置标记移到指定的位置
以参照位置位移时位移量负往头,正向尾。
0 0
- 第15周-二进制文件与字符串流-项目0-课后实践·阅读程序(3)
- 第15周-二进制文件与字符串流-项目0-课后实践·阅读程序(1)
- 第15周-二进制文件与字符串流-项目0-课后实践·阅读程序(2)
- 第15周-二进制文件与字符串流-二进制文件浏览器
- 第14周-输入输出流,文本文件-项目0-课后实践·程序阅读3
- 第14周-阅读项目4-二进制文件和字符串流操作的一般方法
- 第15周-二进制文件与字符串流-用二进制文件处理学生成绩
- 第13周-多态性-项目0-课后实践·阅读程序1.
- 第13周-多态性--项目0-课后实践·阅读程序2.
- 第14周-输入输出流,文本文件-项目0-课后实践·程序阅读1
- 第14周-输入输出流,文本文件-项目0-课后实践·程序阅读2
- 第14周-输入输出流,文本文件-项目0-课后实践·程序阅读4
- 第14周-输入输出流,文本文件-项目0-课后实践·程序阅读5
- 第2周项目1课后实践,阅读程序
- 第14周-阅读项目5-字符串流对象
- 第2周项目-课后实践·阅读程序(1)
- 第2周项目-课后实践·阅读程序(2)
- 第5周课后实践·阅读程序
- 从苹果logo到冤案的发生 谈人类注意力饱和现象
- IBM Data Studio Web控制台在进行配置时发生错误
- 一个实际项目Java架构设计之ETL(Kettle)部分介绍
- Android开源项目——工具库篇
- Unique Binary Search Trees II
- 第15周-二进制文件与字符串流-项目0-课后实践·阅读程序(3)
- C# 调用C++链接库与回调
- 求最大公共字符串
- 填(wa)坑计划
- JAVA访问url POST请求
- 寻找的Class与程序同目录,却报NoClassDefFoundError
- leetcode 日经贴,Cpp code -Invert Binary Tree
- sblime text for window
- SpringMvc Ehcache 实现缓存机制