程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C的freopen使用測試及C++的文件流簡單使用

C的freopen使用測試及C++的文件流簡單使用

編輯:C++入門知識

文件操作使用參考,供課程設計學生參考。

文本文件1.txt內容如下4行,放在d盤根目錄:
1 test
2 file
3 abcde
4 12345

一、C的freopen使用測試:

[cpp
include <iostream>  
#include <string>  
using namespace std; 
 
int main() 

    freopen("d:\\1.txt","r",stdin);//打開文件1.txt用來輸入,文件需存在  
    freopen("d:\\2.txt","w",stdout);//打開文件2.txt用來輸出,自動創建該文件  
    int t; 
    char s[31]; 
    while(scanf("%d%s", &t,s)!=EOF)//處理到文件尾需要用C語言輸入  
    {    
        string ts; 
        ts=s; 
        cout<<t<<" "<<ts<<endl; 
    } 
    freopen("CON","r",stdin);//切換到控制台輸入  
    for(int j=0;j<3;j++) 
    { 
        cin>>s; 
        cout<<s<<endl; 
    } 
    freopen("CON","w",stdout);//切換成輸出到控制台  
    cout<<s<<endl; 
 
    return 0; 

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

int main()
{
 freopen("d:\\1.txt","r",stdin);//打開文件1.txt用來輸入,文件需存在
 freopen("d:\\2.txt","w",stdout);//打開文件2.txt用來輸出,自動創建該文件
 int t;
 char s[31];
 while(scanf("%d%s", &t,s)!=EOF)//處理到文件尾需要用C語言輸入
 { 
  string ts;
  ts=s;
  cout<<t<<" "<<ts<<endl;
 }
 freopen("CON","r",stdin);//切換到控制台輸入
 for(int j=0;j<3;j++)
 {
  cin>>s;
  cout<<s<<endl;
 }
 freopen("CON","w",stdout);//切換成輸出到控制台
 cout<<s<<endl;

 return 0;
}
二、C++文件流的簡單使用方法

[cpp]
include <iostream>  
#include <string>  
#include <fstream> //包含文件操作所需的頭文件  
using namespace std; 
 
ifstream myFile1; //myFile1為輸入文件流,相當於cin  
ofstream myFile2; //myFile2為輸出文件流,相當於cout  
 
void Open2Read(string fn)//讀方式打開文件  
{    
    myFile1.clear(); //清空文件  
    myFile1.open(fn.c_str(), ios::in); //讀打開,文件必須存在  
    if (!myFile1) //打開有誤  
    { 
        cout << "請檢查目錄及文件名!\n"; 
    } 

 
void Open2Write(string fn)//寫方式打開文件  

    myFile2.clear(); 
    myFile2.open(fn.c_str(),ios::out); //寫打開,自動創建文件  
    if (!myFile2) 
    { 
        cout << "請檢查目錄!\n"; 
    } 

 
int main() 

    string fn1="d:\\1.txt", fn2="d:\\2.txt",s; 
    int t; 
    Open2Read(fn1); //讀打開文件  
    Open2Write(fn2); //寫打開文件  
    while(myFile1>>t>>s) //從文件fn1讀取數據,myFile1當作cin來用  
    { 
        myFile2<<t<<" "<<s<<endl; //把數據寫到fn2中,myFile2當作cout來用  
    }    
 
    myFile1.close(); //文件用完必須關閉  
    myFile2.close(); 
 
    return 0; 

#include <iostream>
#include <string>
#include <fstream> //包含文件操作所需的頭文件
using namespace std;

ifstream myFile1; //myFile1為輸入文件流,相當於cin
ofstream myFile2; //myFile2為輸出文件流,相當於cout

void Open2Read(string fn)//讀方式打開文件

 myFile1.clear(); //清空文件
 myFile1.open(fn.c_str(), ios::in); //讀打開,文件必須存在
 if (!myFile1) //打開有誤
 {
  cout << "請檢查目錄及文件名!\n";
 }
}

void Open2Write(string fn)//寫方式打開文件
{
 myFile2.clear();
 myFile2.open(fn.c_str(),ios::out); //寫打開,自動創建文件
 if (!myFile2)
 {
  cout << "請檢查目錄!\n";
 }
}

int main()
{
 string fn1="d:\\1.txt", fn2="d:\\2.txt",s;
 int t;
 Open2Read(fn1); //讀打開文件
 Open2Write(fn2); //寫打開文件
 while(myFile1>>t>>s) //從文件fn1讀取數據,myFile1當作cin來用
 {
  myFile2<<t<<" "<<s<<endl; //把數據寫到fn2中,myFile2當作cout來用
 } 

 myFile1.close(); //文件用完必須關閉
 myFile2.close();

 return 0;
}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved