我想使用C++來提取將被解析的.txt
文件(將指向終端)的內容,但我不知道如何去做這件事?我知道,我們做如何從終端讀取.txt文件,然後從文件中提取內容?
./a.out < file.txt
然後將放file.txt
到標準輸入,但後來我弄糊塗了,因爲我不知道如何訪問文件的內容解析它,等
我想使用C++來提取將被解析的.txt
文件(將指向終端)的內容,但我不知道如何去做這件事?我知道,我們做如何從終端讀取.txt文件,然後從文件中提取內容?
./a.out < file.txt
然後將放file.txt
到標準輸入,但後來我弄糊塗了,因爲我不知道如何訪問文件的內容解析它,等
你可以將定向輸入視爲輸入到cin中。再說,如果我有以下文件input.txt
Hello
World
並運行可執行類似
./a < input.txt
我可以做類似
std::string s1;
std::string s2;
std::cin >> s1;
std::cin >> s2;
std::cout << s1 << s2 << "\n";
然後將打印你好字。使用cin getline也是一種選擇。把它看作是一個非常快的用戶在每個輸入語句中立即輸入一行。
您可以在參數main
上獲取文件名作爲輸入,並打開該文件的std::ifstream
。您可以撥打./a filename
。從file
閱讀,你會這樣做,因爲你從std::cin
(見NickLamp的答案)。
謝謝!這對於只有幾行文本文件來說似乎相當可行。對於100行左右的.txt文件,這怎麼辦? – user5620123
是的,這適用於任何輸入大小。如果您需要從一個非常大的文件中讀取數據,您可以使用一段時間(cin)在標準輸入中繼續讀取,直到輸入結束。 – NickLamp