【发布时间】:2021-11-29 04:59:22
【问题描述】:
如何从文本文件中读取行并将它们存储到数组中。例如,我有一个包含 45 行不同行的文本文件。
我的尝试:
int main()
{
int a[45];
ifstream myfile("enroll_assg.txt");
if(!myfile){
cout << "Error opening file" << endl;
return -1;
}
if(myfile.is_open()){
while(getline(myfile, a, '\n') == 1){
}
}
}
我应该用这个做一个哈希表。我在 getline() 的 while 循环中遇到错误。它是说“没有重载函数的实例”。
我有 45 行,每行都有空格。每一行看起来像:
9650376 乔治琼斯 CS 4.5 ... ...
学生.cpp:
template <typename Comparable>
Student<Comparable>::Student()
{
// Add your code
this->fname = fname;
this->lname = lname;
this->gpa = gpa;
this->department = department;
this->id = id;
this->bucketId = bucketId;
}
student.cpp 也有变量的 getter 和 setter。
【问题讨论】:
-
int a[45];为 45 个整数变量分配空间。这将如何保存文本行?必读:Why is iostream::eof inside a loop condition (i.e.while (!stream.eof())) considered wrong? -
@RetiredNinja 我更改了它,现在使用 if(my.is_open()){ 代替。我怎么能这样做我是新手,现在迷路了。
-
按出现的顺序一次解决一个问题。第一个问题是:int a[45];为 45 个整数变量分配空间。这将如何保存文本行?你解决了吗?
-
很好奇你从哪里得到
std::getline成功返回 1 的想法。
标签: c++