入力ストリームと出力ストリームをファイルにリダイレクトする
標準入力 (cin) と標準出力 (cout) を入出力用のファイルにリダイレクトするにはそれぞれの操作は次のようになります手順:
実装:
#include <iostream> #include <fstream> #include <string> int main() { // Open the input and output files std::ifstream in("in.txt"); std::ofstream out("out.txt"); // Redirect cin and cout to the files std::streambuf* cinbuf = std::cin.rdbuf(); std::cin.rdbuf(in.rdbuf()); std::streambuf* coutbuf = std::cout.rdbuf(); std::cout.rdbuf(out.rdbuf()); // Perform input and output operations std::string line; while (std::getline(std::cin, line)) { std::cout << line << "\n"; } // Reset cin and cout to standard streams std::cin.rdbuf(cinbuf); std::cout.rdbuf(coutbuf); return 0; }
説明:
簡易リダイレクト:
次を使用して 1 行で保存およびリダイレクトすることもできます:
auto cinbuf = std::cin.rdbuf(in.rdbuf());
これは cin のバッファを in.rdbuf() に設定し、古いバッファを返しますシンと関係がある。同じ手法を std::cout でも使用できます。
以上がC 標準の入出力ストリームをファイルにリダイレクトするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。