用一维数组如何提取一个文件(.txt)的一行(列)文件

水菜水菜的 2019-05-25 12:11:28
最近有个大作业,需要导入的文件是txt格式,从直观上看这个文件应该是个n×3的矩阵,排列得很整齐。但是这项作业的做法上不能把整个文件通通用infile导到一个二维数组里,而是分别取这个文件的第一列,第二列和第三列,因为每一列会有各自的用途。 我同学说用一维数组(他推荐的用vector建立一个一维容器)就能拿出这个文件的一列,可我怎么也想不通,首先我不知道该怎么循环它让它只取列;其次取其中一列又不敢用eof;再次这个文件里全是int型的,针对于字符串的getline也无的放矢。 这里想问问各位大神,如何精准地取出这个txt文件的一列呢?
...全文
30 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Italink 2019-05-25
  • 打赏
  • 举报
回复
3列是吧,3次for循环啊,第一次读的是第一列的元素,第二次读的是第二列的元素。你要第几列就去循环的第几次啊,你同学说的对,在不确定n的大小的情况下,用vector是很简单的方法,另外读文件用ifstream吗,就跟cin一样的用法用就行了
WindyValley 2019-05-25
  • 打赏
  • 举报
回复
getline()取一行,再把第一节的数字剪切出来,然后用atoi()转换成数字,atoi好像在string.h里

64,654

社区成员

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

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