使用 while 循环从文本文件中读入数据
Reading in data from a text file using while loop
所以我使用 while 循环将数据从文本文件读入向量。
最初我是这样设置代码的:
iftream infile;
while(infile) // or even if i do while(!infile.eof())
{
infile>>data;
vector1.push_back(data); //adding data in to the vector
}
- 但这导致了一个小问题,由于某种原因,它在文本文件中的最后一项中读取了两次。
但是如果我以这种方式设置代码,一切正常:
iftream infile;
while(infile>>data)
{
vector1.push_back(data); //adding data in to the vector
}
为什么第一个代码在最后一项中读取两次?
看起来您的data
结构在文件中没有完全对齐,即当您的程序尝试读取最后一个片段时,它还没有到达文件的末尾,但没有足够的数据可以读取。所以infile >> data
失败,这意味着data
的内容没有被改变,因此你再次将其添加到你的向量中。
在第二种情况下,检查读取结果,因此在未正确读取时不会尝试推送data
内容。
相关文章:
- 将文件读入数据结构
- 如何检测将文本文件读入 int 数组的新行
- 将整个二进制文件读入缓冲区,然后以特定格式解析
- 将数据文件读入结构 C++
- 将文本文件读入整数数组
- 如何通过在逗号处拆分将文件读入 2D 列表
- 将文本文件读入类变量 - c++
- 将大型 csv 文件读入数组 c++ 中
- 在 Ubuntu(linux OS)中将一个巨大的文件读入C++向量
- 从带有 getline() 的文件读入一行上有多个信息得到无效参数错误
- 将文本文件读入链表
- 将数据文件读入对象数组时出现问题
- 在C++中将文件读入三个不同的向量
- 如何将文本文件读入 2D 矢量?
- 使用循环从包含多行的文本文件中读入数据
- 将大数据文件读入数据结构 c++
- 使用字符串函数将数据从文件读入结构
- C++:操作从文本文件读入的数据
- 使用 while 循环从文本文件中读入数据
- 将数据从文件读入结构体,对数据进行排序并写入文件