Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh mengubah hala C Standard Input dan Output Stream ke Fail?
Mengubah Aliran Input dan Output ke Fail
Untuk mengubah hala input standard (cin) dan output standard (cout) ke fail untuk input dan output operasi, masing-masing, ikut ini langkah:
Pelaksanaan:
#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; }
Penjelasan:
Pengalihan Mudah:
Anda juga boleh menyimpan dan mengubah hala dalam satu baris menggunakan:
auto cinbuf = std::cin.rdbuf(in.rdbuf());
Ini menetapkan penimbal cin kepada in.rdbuf() dan mengembalikan penimbal lama yang dikaitkan dengan cin. Teknik yang sama boleh digunakan dengan std::cout.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mengubah hala C Standard Input dan Output Stream ke Fail?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!