C++怎么读取下一个字符

abs618 2013-11-05 01:23:11
现在我有10行,每行5个数据(比如,张三,100,夏威夷,工人,50)数据在txt文件中,

我用for循环读前8行,

现在我要做一个提示,

如果程序读了8行之后,文件中剩下两行数据未读,我希望系统提示:还有其他信息未读并且写出下一行人的姓名,我该怎么做?
cout << "Attention: File contains information beyond "<< number << " records" << endl;
cout << "beginning with "" << FName << """ << endl;

不用管number,我只想知道FName怎么写?谢谢!~
...全文
350 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
qingcairousi 2013-11-07
  • 打赏
  • 举报
回复
你这是一个简单的parser。 其实就归类到编译的错误处理上。 翻翻书就知道怎么处理了。
tbwork 2013-11-05
  • 打赏
  • 举报
回复
你就是想,怎么读下一行的数据,又不让指针偏移呗? 明显不可能的,但是换个角度,会得到答案: 你之所以想要这样,就是怕指针移动过去了,再用getline函数得到的行不完整呗。 那你就这样,假如用户要读8行。你就读9行。 要读前n行,你就读前n+1行,你显示的时候就显示n行。 伪代码: for(int i=1;i<=n+1;i++) { string str=getline(...) if(i<=n) show() else { sstream sstr(str); sstr>>NextName; PopMessage("Next Name is "+NextName); } }
Uncle_higo 2013-11-05
  • 打赏
  • 举报
回复
引用 6 楼 abs618 的回复:
[quote=引用 3 楼 threshold1980 的回复:] 没太懂你说的意思,不过既然你需要下面的信息,当然要10行都读出来,只显示八行的内容就好了,哪怕之后再把文件指针跳回第八行呢
怎么把指针跳回呢? 我只想知道有没有方法在8行循环外面读出第9行数据[/quote] 你在八行读完,用一个变量记录一下当前文件的指针,然后需要的时候,seek回来
不良制品 2013-11-05
  • 打赏
  • 举报
回复
你之前不是,已经读取了前8行了吗,此次文件指针已经指向了低9行的开头了,你直接继续读取下一行数据,就是第9行了啊,不然你前面8行是怎么读到的
abs618 2013-11-05
  • 打赏
  • 举报
回复
引用 8 楼 u011623102 的回复:
继续读下一行,然后用字符分割,看你的举例是用‘,’分割,然后取出名字的一行就行了
我知道应该这么做,但是唯独不太知道怎么跳过前八行,直接读第九行。
不良制品 2013-11-05
  • 打赏
  • 举报
回复
继续读下一行,然后用字符分割,看你的举例是用‘,’分割,然后取出名字的一行就行了
abs618 2013-11-05
  • 打赏
  • 举报
回复
有没有人知道啊有没有人知道啊有没有人知道啊
abs618 2013-11-05
  • 打赏
  • 举报
回复
引用 3 楼 threshold1980 的回复:
没太懂你说的意思,不过既然你需要下面的信息,当然要10行都读出来,只显示八行的内容就好了,哪怕之后再把文件指针跳回第八行呢
怎么把指针跳回呢? 我只想知道有没有方法在8行循环外面读出第9行数据
abs618 2013-11-05
  • 打赏
  • 举报
回复
引用 4 楼 derekrose 的回复:
你的读是一行一行读的? 或者是按size读的?
不好意思我初学C++,就是一行一行读的,我已经跳出了循环,只读了八行,可是文件中有十行,我只想知道有没有简单的方法在循环外面读出第九行数据,或者是不是读完了八行跳出循环后光标已经在第九行开头了
derekrose 2013-11-05
  • 打赏
  • 举报
回复
你的读是一行一行读的? 或者是按size读的?
Uncle_higo 2013-11-05
  • 打赏
  • 举报
回复
没太懂你说的意思,不过既然你需要下面的信息,当然要10行都读出来,只显示八行的内容就好了,哪怕之后再把文件指针跳回第八行呢
abs618 2013-11-05
  • 打赏
  • 举报
回复
引用 1 楼 derekrose 的回复:
你要先制定好规则
你说的规则指的是?
derekrose 2013-11-05
  • 打赏
  • 举报
回复
你要先制定好规则

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧