getline 函数中的文件处理

File handling in getline function

我有一个如下所示的文本文件:

 A          4     6
 B          5     7
 c          4     8

我想将它存储在三个不同的数组中:

char pro[];     // contains values A B C
int arrival[];  // contains values of 4 5 5
int Burst[];    // contains values of 6 7 8

我不知道该怎么做。感谢任何帮助(教程、伪代码等)。

这就是我的提议。希望对您有所帮助。

基本上它的作用是创建三个容器(参见来自 STL 的 std::vector)。它们可以有无限大小(你不必提前声明)。创建三个辅助变量,然后使用它们从流中读取。

while 循环中的条件检查数据是否仍在文件流中。 我没有使用 .eof() 方法,因为它总是读取文件中的最后一行两次。

using namespaces std;

int main() {

vector<char> pro;
vector<int> arrival;
vector<int> Burst;

/* your code here */

char temp;
int number1, number2;


ifstream file;
file.open("text.txt");

if( !(file.is_open()))
  exit(EXIT_FAILURE);

while (file >> temp >> number1 >> number2)
{
  pro.push_back(temp);
  arrival.push_back(number1);
  Burst.push_back(number2);
}

file.close();

}