none
iostream ifstream 转化 RRS feed

  • 问题

  • 例如

    	ofstream fout;
    
    	cout = fout;
    
    	cout << "123";

    这些其实就输出到文件了

    类似这样的能实现吗?




    • 已编辑 dream99 2015年1月5日 4:36
    2015年1月2日 14:31

答案

  • 请使用std::freopen。大概使用方法:

    #ifndef _DEBUG
    std::freopen(R"(C:\test.txt)","w+",stdout);
    #endif


    Visual Basic 初学者 望关照!


    2015年1月12日 4:51
  • /* freopen example: redirecting stdout */
    #include <stdio.h>
    
    int main ()
    {
      freopen ("C:\\myfile.txt","w",stdout);
      printf ("This sentence is redirected to a file.");
      fclose (stdout);
      return 0;
    }


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.


    2015年1月12日 10:56
    版主

全部回复

  • 您的意思是手动输入文件名,然后打开该文件读写数据吗?

    类似下面这样的:
    #include <iostream>
    #include <fstream>
    using namespace std;
    ....
    char szPath[MAX_PATH] = {0};
    cin >> szPath;
    ifstream in(szPath, ifstream::xxx);
    if(in)
    {
     ....
     in.close();
    }


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.

    2015年1月4日 7:22
    版主
  • 我的意思是测试的时候用cout,等测试完用cout=ofstream这样一句就把cout定向到文件,抱歉啊,没说清楚
    • 已编辑 dream99 2015年1月5日 4:37
    2015年1月5日 4:34
  • 请使用std::freopen。大概使用方法:

    #ifndef _DEBUG
    std::freopen(R"(C:\test.txt)","w+",stdout);
    #endif


    Visual Basic 初学者 望关照!


    2015年1月12日 4:51
  • /* freopen example: redirecting stdout */
    #include <stdio.h>
    
    int main ()
    {
      freopen ("C:\\myfile.txt","w",stdout);
      printf ("This sentence is redirected to a file.");
      fclose (stdout);
      return 0;
    }


    Visual C++ enthusiast, like network programming and driver development. At present is being engaged in the WinCE/Windows Mobile platform embedded development.


    2015年1月12日 10:56
    版主
  • 谢谢~~~~~~
    2015年1月23日 6:45
  • 谢谢~~~~~~
    2015年1月23日 6:45