#include <iostream>
#include <fstream>
using namespace std;
int main()
{
  std::ifstream fp;
  fp.open(/*filename.c_str()*/"aa.txt", std::ios::in | std::ios::binary);   .seekg(0,FILE_END);   streampos filesize = fp.tellg();
  char* str = new char[10]; if (fp.seekg(10))
{
  streampos size = fp.tellg();
  cout << size<<endl;
} if (fp.seekg((DWORD)filesize +10))
{
  streampos size = fp.tellg(); //能够读取出来数据
  cout << size<<endl;
  if (fp.getline(str, 10))
  {
    cout << "getline" << endl; //失败,没有进入,不能读取
  }
  if (fp.fail())
  {
    cout << "fp.fail()" << endl; //能够进入
  }
  if (fp.bad())
  {
    cout << "bad" << endl; //不进入
  }
}

delete[] str;
return 0;
}

结果:

结论:

在c++ 流文件中,seekg可以越界,需要通过fail()来判断。

不过在越界后,不能成功读取到数据,所以在读取数据前需要判断。

c++ fstream feekg讨论的更多相关文章

  1. C++读写文件ofstream,ifstream,fstream)[转]

    在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,fstream,以前粗略知道其用法和含义,在看了几位大牛的博文后,进行整理和总结: 这里主要是讨论fstream的内容:[ ...

  2. C++文件读写详解(ofstream,ifstream,fstream)

    C++文件读写详解(ofstream,ifstream,fstream) 这里主要是讨论fstream的内容: #include <fstream> ofstream //文件写操作 内存 ...

  3. 转载:fstream和ifstream详细用法

    文件 I/O 在C++中比烤蛋糕简单多了.在这篇文章里,我会详细解释ASCII和二进制文件的输入输出的每个细节,值得注意的是,所有这些都是用C++完成的. 一.ASCII 输出 为了使用下面的方法, ...

  4. 【转载】C++文件读写详解(ofstream,ifstream,fstream)

    原文:http://blog.csdn.net/kingstar158/article/details/6859379 在看C++编程思想中,每个练习基本都是使用ofstream,ifstream,f ...

  5. [NodeJS] 优缺点及适用场景讨论

    概述: NodeJS宣称其目标是“旨在提供一种简单的构建可伸缩网络程序的方法”,那么它的出现是为了解决什么问题呢,它有什么优缺点以及它适用于什么场景呢? 本文就个人使用经验对这些问题进行探讨. 一. ...

  6. CSS常见居中讨论

    先来一个常见的案例,把一张图片和下方文字进行居中: 首先处理左右居中,考虑到img是一个行内元素,下方的文字内容也是行内元素,因此直接用text-align即可: <style> .con ...

  7. 三种上传文件不刷新页面的方法讨论:iframe/FormData/FileReader

    发请求有两种方式,一种是用ajax,另一种是用form提交,默认的form提交如果不做处理的话,会使页面重定向.以一个简单的demo做说明: html如下所示,请求的路径action为"up ...

  8. 从三栏自适应宽度布局到css布局的讨论

    如何实现一个三栏自适应布局,左右各100px,中间随着浏览器宽度自适应? 第一个想到的是使用table布局,设置table的宽度为100%,三个td,第1个和第3个固定宽度为100px,那么中间那个就 ...

  9. 简历生成平台项目开发-STEP4第二次项目例会讨论

    时间:2016.7.15周五7点半 地点:图书馆 讨论主题:交流各自手头项目进展,确定下一步任务 内容:按照之前的讨论的任务大家各自汇报进度. 汇报人:谭卓.尹忠诚 内容:1.基于富文本编辑器的模板, ...

随机推荐

  1. rollup 使用babel7版本的插件rollup-plugin-babel,rollup-plugin-babel使用报错解决办法。

    最近在研究rollup,想吐槽下rollup的官方文档写的真的太简单了,而且照着文档一步步来还报错,说明文档年代有点久远啊... 照着文档使用rollup-plugin-babel报错,首先打开rol ...

  2. vscode 1.32.x按下鼠标左键无法拖曳选择,而旧一点的版本1.30.2可以

    最近升级vscode后,无法通过鼠标左键选择文本,恢复到旧版本1.30.2就可以了. 另外:1.32.x和1.31.1都不正常 进一步测试发现:在中文输入法下(无论中英输入模式),都有问题:切换到纯英 ...

  3. 太空大战-GUI实现(1)

    1.复习GUI后,第一天实现的效果 2. 项目实现思路 基本的窗口界面实现就不讲了,源码都看得懂的,这里只说其中比较重要的几个功能的实现. 面板的绘制(所有图形的绘制) 首先,需要在GamePanel ...

  4. 四种cmd打开方式

    四种cmd打开方式: 开始+系统+命令提示符: Win+R 输入cmd回车(推荐使用): 按住shift键加右键,点击打开PowerShell窗口: 资源管理器的地址栏前加入cmd+空格

  5. ☕【Java技术指南】「并发编程专题」Fork/Join框架基本使用和原理探究(基础篇)

    前提概述 Java 7开始引入了一种新的Fork/Join线程池,它可以执行一种特殊的任务:把一个大任务拆成多个小任务并行执行. 我们举个例子:如果要计算一个超大数组的和,最简单的做法是用一个循环在一 ...

  6. openwrt开发笔记三:uci移植及API调用

    1.uci编译安装.移植 安装依赖 libubox #安装cmake sudo apt-get install cmake #下载依赖库libubox git clone http://git.nbd ...

  7. Typora画各类流程图、甘特图、饼图等详细文档

    Draw Diagrams With Markdown August 15, 2016 by typora.io Typora supports some Markdown extensions fo ...

  8. try/catch捕获处理异常

    1.throws是中断处理,后续代码不能执行 try/catch方法体之后的后续代码有没有异常都可以继续执行: 2.当try方法体中出现异常才会执行catch方法体中代码

  9. vue+element+echarts饼状图+可折叠列表

    html: <div id="echartsDiv" style="width: 48%; height: 430px; float: left;"> ...

  10. 解析Prometheus PromQL

    解析PromQL 目前对Prometheus 的promQL 的解析文章比较少,且Prometheus官方也没有提供一个公共的库来对齐进行解析.下面实现对promQL的解析,并实现注入label功能. ...