重定向输入输出freopen,文件流fstream

简介: 重定向输入输出freopen,文件流fstream

函数名:freopen
声明:FILE freopen( const char path, const char mode, FILE stream );
参数说明
path: 文件名,用于存储输入输出的自定义文件名。
mode: 文件打开的模式。和fopen中的模式(如r-只读, w-写)相同。
stream: 一个文件,通常使用标准流文件。
返回值
成功,则返回一个path所指定文件的指针;失败,返回NULL。(一般不使用它的返回值)
功能:实现重定向,把预定义的标准流文件定向到由path指定的文件中。标准流文件具体是指stdin、stdout和stderr。其中stdin是标准输入流,默认为键盘;stdout是标准输出流,默认为屏幕;stderr是标准错误流,一般把屏幕设为默认。通过调用freopen,就可以修改标准流文件的默认值,实现重定向。

#include <iostream>
#include <cstdio>
using namespace std;

int main()
{
   
    char ch;
    freopen("in.txt", "r", stdin);
    freopen("out.txt", "w", stdout);
    while ((ch=getchar())!=EOF){
   
        putchar(ch);
    }
    fclose(stdin);
    fclose(stdout);
    return 0;
}

C++文件流方式读写文件

#include <iostream>
#include <fstream>
using namespace std;

int main(){
   
    ifstream fin("C:\\Users\\dell\\Desktop\\1\\1.in");
    ofstream fout("C:\\Users\\dell\\Desktop\\1\\1.out");
    int t;
    while (fin>>t){
   
        fout<<t<<endl;
    }
    fin.close();
    fout.close(); 
    return 0;
}

C文件读写方式

#include <iostream>
#include <cstdlib>
using namespace std;

int main(){
   
    FILE *fin = fopen("C:\\Users\\dell\\Desktop\\1\\1.in", "r");
    FILE *fout = fopen("C:\\Users\\dell\\Desktop\\1\\1.out", "w");
    int t;
    while (fscanf(fin, "%d", &t)!=EOF){
   
        fprintf(fout, "%d", t);
    }    
    fclose(fin);
    fclose(fout);
    return 0;
}
相关文章
|
2月前
|
C++ iOS开发 开发者
C++一分钟之-文件输入输出(I/O)操作
【6月更文挑战第24天】C++的文件I/O涉及`ifstream`, `ofstream`和`fstream`类,用于读写操作。常见问题包括未检查文件打开状态、忘记关闭文件、写入模式覆盖文件及字符编码不匹配。避免这些问题的方法有:检查`is_open()`、显式关闭文件或使用RAII、选择适当打开模式(如追加`ios::app`)以及处理字符编码。示例代码展示了读文件和追加写入文件的实践。理解这些要点能帮助编写更健壮的代码。
41 2
|
3月前
|
存储 编译器 C语言
C语言进阶⑱(文件上篇)(动态通讯录写入文件)(文件指针+IO流+八个输入输出函数)fopen+fclose(下)
C语言进阶⑱(文件上篇)(动态通讯录写入文件)(文件指针+IO流+八个输入输出函数)fopen+fclose
34 0
|
3月前
|
存储
文件底层的深入理解之文件输入输出重定向
文件底层的深入理解之文件输入输出重定向
|
3月前
|
存储 缓存 程序员
C++ 文件读写:探索 ofstream, ifstream 和 fstream 的奥秘
C++ 文件读写:探索 ofstream, ifstream 和 fstream 的奥秘
300 0
|
9月前
|
存储 安全 编译器
C#中使用I/O文件流
流,即是二进制数值,文件和流 I/O(输入/输出)是指在存储媒介中传入或传出数据。在 .NET 中,System.IO命名空间包含允许以异步方式和同步方式对数据流和文件进行读取和写入操作的类型。这些命名空间还包含对文件执行压缩和解压缩的类型,以及通过管道和串行端口启用通信的类型。命名空间:System.IO程序集:System.Runtime.dll。
68 1
|
存储 iOS开发 C++
C++中文件操作与文件流
🐰文件操作与文件流 🏡文件流类和文件流对象 🏡文件的打开与关闭 🌸1.文件的打开 🌸2.文件的关闭 🏡对文本文件的操作 🏡对二进制文件的操作 🌸1.用成员函数write和read操作二进制文件 🌸2.随机访问二进制文件
文件输入输出流
文件输入输出流
115 0
|
存储 程序员 C++
C++输入输出文件流
C++输入输出文件流
165 0
C++输入输出文件流
|
存储 C语言
【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
229 0
【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
|
数据安全/隐私保护 C语言
【C 语言】文件操作 ( 读文本文件 | 文本加密解密 | fgets 函数 | fputs 函数 )(二)
【C 语言】文件操作 ( 读文本文件 | 文本加密解密 | fgets 函数 | fputs 函数 )(二)
122 0
【C 语言】文件操作 ( 读文本文件 | 文本加密解密 | fgets 函数 | fputs 函数 )(二)