如何从C ++中的三个不同的txt文件中获取输入?

时间:2016-04-14 00:05:23

标签: c++

我想从三个不同的.txt文件中获取输入。 就像我们说的那样,我使用命令在命令行编译我的程序:

g++ -o mainOb main.cpp

在此之后,我想提供三个.txt文件作为stdin的形式。我可以使用以下命令轻松地为一个文件执行此操作:

./mainOb < inputNumber1.txt

我想做的是:

./mainOb < inputNumber1.txt inputNumber2.txt inputNumber3.txt 

当我这样做时,第一个输入txt文件被正确处理,但我不知道如何处理下两个输入文件。

2 个答案:

答案 0 :(得分:2)

您希望连接这三个文件,然后将它们传输到程序中。

cat inputNumber1.txt inputNumber2.txt inputNumber3.txt | ./mainOb

答案 1 :(得分:1)

我认为最好的方法是重构代码以使用3个文件。 你可以像这里一样使用fstream,我打开2个文件你可以轻松获得3个或更多,如果你喜欢这样!

#include <iostream>
#include <fstream>
using namespace std;

int main (int argc, char* argv[])
{
fstream file1,file2;

file1.open(argv[1]);
file2.open(argv[2]);

string first_line;
string second_line;

file1 >> first_line;
file2 >> second_line;

cout << "File one has " << first_line << endl;
cout << "File two has " << second_line << endl;

return 0;
}