zoukankan      html  css  js  c++  java
  • how-to-redirect-cin-and-cout-to-files

    #include <iostream>
    #include <fstream>
    #include <string>
    
    void f()
    {
        std::string line;
        while(std::getline(std::cin, line))  //input from the file in.txt
        {
            std::cout << line << "
    ";   //output to the file out.txt
        }
    }
    int main()
    {
        std::ifstream in("in.txt");
        std::streambuf *cinbuf = std::cin.rdbuf(); //save old buf
        std::cin.rdbuf(in.rdbuf()); //redirect std::cin to in.txt!
    
        std::ofstream out("out.txt");
        std::streambuf *coutbuf = std::cout.rdbuf(); //save old buf
        std::cout.rdbuf(out.rdbuf()); //redirect std::cout to out.txt!
    
        std::string word;
        std::cin >> word;           //input from the file in.txt
        std::cout << word << "  ";  //output to the file out.txt
    
        f(); //call function
    
    
        std::cin.rdbuf(cinbuf);   //reset to standard input again
        std::cout.rdbuf(coutbuf); //reset to standard output again
    
        std::cin >> word;   //input from the standard input
        std::cout << word;  //output to the standard input
    }
  • 相关阅读:
    python's is&==区别
    python's decorator&wrapper
    objects & values & types
    linux sort命令
    partial function
    proc文件系统
    readlink 获取当前进程对应proc/self/exe
    Workgroup&Domain(Realm)
    python传值&值引用
    Unpacking Argument Lists
  • 原文地址:https://www.cnblogs.com/xuxm2007/p/4646728.html
Copyright © 2011-2022 走看看