国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C/C++ - c++讀寫文件流實例程序講解

c++讀寫文件流實例程序講解

2021-01-10 14:00C++教程網 C/C++

這篇文章主要介紹了c++讀寫文件流實例,大家參考使用吧

掌握文本文件讀寫的方法
了解二進制文件的讀寫方法

C++文件流:

復制代碼 代碼如下:

fstream  // 文件流
ifstream  // 輸入文件流
ofstream  // 輸出文件流

//創建一個文本文件并寫入信息
//同向屏幕上輸出信息一樣將信息輸出至文件
#include<iomanip.h>
#include<fstream.h>
void main()
{
  ofstream f1("d:\\me.txt");           //打開文件用于寫,若文件不存在就創建它
  if(!f1)return;                 //打開文件失敗則結束運行
  f1<<setw(20)<<"姓名:"<<"廉東方"<<endl;     //使用插入運算符寫文件內容
  f1<<setw(20)<<"家庭地址:"<<"河南鄭州"<<endl;
  f1.close();                   //關閉文件
}

 

運行后打開文件d:\me.txt,其內容如:姓名:廉東方家庭地址:河南鄭州

文件操作:
打開文件
文件名
注意路徑名中的斜杠要雙寫,如:"D:\\MyFiles\\ReadMe.txt"
文件打開方式選項:
ios::in= 0x01, //供讀,文件不存在則創建(ifstream默認的打開方式)
ios::out  = 0x02, //供寫,文件不存在則創建,若文件已存在則清空原內容(ofstream默認的打開方式)
ios::ate  = 0x04, //文件打開時,指針在文件最后。可改變指針的位置,常和in、out聯合使用
ios::app  = 0x08, //供寫,文件不存在則創建,若文件已存在則在原文件內容后寫入新的內容,指針位置總在最后
ios::trunc = 0x10, //在讀寫前先將文件長度截斷為0(默認)
ios::nocreate = 0x20, //文件不存在時產生錯誤,常和in或app聯合使用
ios::noreplace = 0x40, //文件存在時產生錯誤,常和out聯合使用
ios::binary= 0x80  //二進制格式文件
文件保護方式選擇項:
filebuf::openprot; //默認的兼容共享方式
filebuf::sh_none;  //獨占,不共享
filebuf::sh_read;  //讀共享
filebuf::sh_write; //寫共享
打開文件的方法
調用構造函數時指定文件名和打開模式
ifstream f("d:\\12.txt",ios::nocreate); //默認以 ios::in 的方式打開文件,文件不存在時操作失敗
ofstream f("d:\\12.txt");  //默認以 ios::out的方式打開文件
fstream f("d:\\12.dat",ios::in|ios::out|ios::binary); //以讀寫方式打開二進制文件
使用Open成員函數
fstream f;
f.open("d:\\12.txt",ios::out); //利用同一對象對多個文件進行操作時要用到open函數
檢查是否成功打開
成功:
if(f){...} //對ifstream、ofstream對象可用,fstream對象不可用。
if(f.good()){...}
失敗:
if(!f){...} // !運算符已經重載
if(f.fail()){...}
讀寫操作
使用<<,>>運算符
只能進行文本文件的讀寫操作,用于二進制文件可能會產生錯誤。
使用函數成員 get、put、read、write等
經常和read配合使用的函數是gcount(),用來獲得實際讀取的字節數。
讀寫二進制文件注意事項
打開方式中必須指定ios::binary,否則讀寫會出錯
用read\write進行讀寫操作,而不能使用插入、提取運算符進行操作,否則會出錯。
使用eof()函數檢測文件是否讀結束,使用gcount()獲得實際讀取的字節數
關閉文件
使用成員函數close,如:
f.close(); 
利用析構函數
對象生命期結束時會檢查文件是否關閉,對沒有關閉的文件進行關閉操作。
隨機讀寫文件
通過移動文件讀寫指針,可在文件指定位置進行讀寫。
seekg(絕對位置);//絕對移動,//輸入流操作
seekg(相對位置,參照位置);  //相對操作
tellg();//返回當前指針位置
seekp(絕對位置);//絕對移動,//輸出流操作
seekp(相對位置,參照位置);  //相對操作 
tellp();//返回當前指針位置
參照位置:
ios::beg= 0 //相對于文件頭
ios::cur= 1 //相對于當前位置
ios::end= 2 //相對于文件尾
讀寫文本文件的示例
/為能夠正確讀出寫入文件的各數據,各數據間最好要有分隔

 

復制代碼 代碼如下:

#include<fstream.h>
void main()
{
fstream f("d:\\try.txt",ios::out);
f<<1234<<' '<<3.14<<'A'<<"How are you"; //寫入數據
f.close();
f.open("d:\\try.txt",ios::in);
int i;
double d;
char c;
char s[20];
f>>i>>d>>c; //讀取數據
f.getline(s,20);
cout<<i<<endl; //顯示各數據
cout<<d<<endl;
cout<<c<<endl;
cout<<s<<endl;
f.close();
}

 

運行結果:

1234
3.14
A
How are you
Press any key to continue

顯示文本文件的內容

使用get()一次讀一個字符--------------------------------方案一

 

復制代碼 代碼如下:


#include<fstream.h>
void main()
{
ifstream fin("d:\\簡介.txt",ios::nocreate);
if(!fin){
cout<<"File open error!\n";
return;
}
char c;
while((c=fin.get())!=EOF)cout<<c;  //注意結束條件的判斷
fin.close();
}

 

//使用get(char *,int n,char delim='\n')一次讀多個字符----方案二
//巧妙利用文本文件中不會有字符'\0'的特點進行讀取
#include<fstream.h>
void main()
{
ifstream fin("d:\\簡介.txt",ios::nocreate);
if(!fin){
cout<<"File open error!\n";
return;
}
char c[80];
while(fin.get(c,80,'\0')!=NULL)cout<<c; //注意結束條件的判斷
fin.close();
}
//使用read(char *,int n)讀文件---------------------------方案三
#include<fstream.h>
void main()
{
ifstream fin("d:\\簡介.txt",ios::nocreate);
if(!fin){
cout<<"File open error!\n";
return;
}
char c[80];
while(!fin.eof())  //判斷文件是否讀結束
{
fin.read(c,80);
cout.write(c,fin.gcount());
}
fin.close();
}

 

拷貝文件
二進制文件操作示例

復制代碼 代碼如下:

#include<fstream.h>
void main()
{
ifstream fin("C:\\1.exe",ios::nocreate|ios::binary);
if(!fin){
cout<<"File open error!\n";
return;
}
ofstream fout("C:\\2.exe",ios::binary);
char c[1024];
while(!fin.eof())
{
fin.read(c,1024);
fout.write(c,fin.gcount());
}
fin.close();
fout.close();
cout<<"Copy over!\n";
}

延伸 · 閱讀

精彩推薦
  • C/C++深入理解goto語句的替代實現方式分析

    深入理解goto語句的替代實現方式分析

    本篇文章是對goto語句的替代實現方式進行了詳細的分析介紹,需要的朋友參考下...

    C語言教程網7342020-12-03
  • C/C++學習C++編程的必備軟件

    學習C++編程的必備軟件

    本文給大家分享的是作者在學習使用C++進行編程的時候所用到的一些常用的軟件,這里推薦給大家...

    謝恩銘10102021-05-08
  • C/C++c++ 單線程實現同時監聽多個端口

    c++ 單線程實現同時監聽多個端口

    這篇文章主要介紹了c++ 單線程實現同時監聽多個端口的方法,幫助大家更好的理解和學習使用c++,感興趣的朋友可以了解下...

    源之緣11542021-10-27
  • C/C++C/C++經典實例之模擬計算器示例代碼

    C/C++經典實例之模擬計算器示例代碼

    最近在看到的一個需求,本以為比較簡單,但花了不少時間,所以下面這篇文章主要給大家介紹了關于C/C++經典實例之模擬計算器的相關資料,文中通過示...

    jia150610152021-06-07
  • C/C++C++之重載 重定義與重寫用法詳解

    C++之重載 重定義與重寫用法詳解

    這篇文章主要介紹了C++之重載 重定義與重寫用法詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下...

    青山的青6062022-01-04
  • C/C++C語言中炫酷的文件操作實例詳解

    C語言中炫酷的文件操作實例詳解

    內存中的數據都是暫時的,當程序結束時,它們都將丟失,為了永久性的保存大量的數據,C語言提供了對文件的操作,這篇文章主要給大家介紹了關于C語言中文件...

    針眼_6702022-01-24
  • C/C++詳解c語言中的 strcpy和strncpy字符串函數使用

    詳解c語言中的 strcpy和strncpy字符串函數使用

    strcpy 和strcnpy函數是字符串復制函數。接下來通過本文給大家介紹c語言中的strcpy和strncpy字符串函數使用,感興趣的朋友跟隨小編要求看看吧...

    spring-go5642021-07-02
  • C/C++C語言實現電腦關機程序

    C語言實現電腦關機程序

    這篇文章主要為大家詳細介紹了C語言實現電腦關機程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    xiaocaidayong8482021-08-20
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 成人免费看黄色 | 特级黄一级播放 | 亚洲一区在线视频 | 欧美大片黄 | 国产在线观看免费 | 亚洲国产精品激情在线观看 | 日韩中文字幕一区二区三区 | 日韩精品免费一区二区夜夜嗨 | 欧洲另类二三四区 | 自拍视频在线 | 亚洲精品一区中文字幕乱码 | 成人av高清在线观看 | av网站一区| 国产99久久精品 | 亚洲激情精品 | 992人人草 | 成人在线免费观看小视频 | 亚洲成人av在线 | 国产一级片 | 欧美片网站免费 | 成人爽a毛片一区二区免费 成年人毛片视频 | 欧美激情一区二区 | 一级毛片免费观看 | 国产一区二区在线免费观看 | 久久99精品国产麻豆婷婷洗澡 | 久久久国产精品一区 | 日韩精品一区二区在线观看视频 | 精品少妇一区二区三区 | www久久久久久久 | 国产一区二区三区在线视频 | 性色好看的网站 | 免费三级黄色片 | www.97超碰.com| 国产精品久久久久精 | 免费观看欧美一级大片 | 亚洲国产成人av好男人在线观看 | 久久久一区二区三区 | 91精品国产色综合久久 | 国产在线一区二区三区 | 看毛片网 | 日韩无在线 |