合工大計算機學(xué)院 程序設(shè)計 10第十章 C++的輸入輸出.ppt
《合工大計算機學(xué)院 程序設(shè)計 10第十章 C++的輸入輸出.ppt》由會員分享,可在線閱讀,更多相關(guān)《合工大計算機學(xué)院 程序設(shè)計 10第十章 C++的輸入輸出.ppt(21頁珍藏版)》請在裝配圖網(wǎng)上搜索。
第十章C+的輸入輸出,流文件文件流的使用:文件的輸入和輸出,10.1流與文件一、流,C+語言提供了流用于讀寫文件。接收輸出數(shù)據(jù)的地方稱為目標(biāo),發(fā)出輸入數(shù)據(jù)的地方稱為源。輸入輸出操作可以看作是字符序列在源、目標(biāo)與對象之間的流動,因而將完成輸入輸出操作的類稱為流類。源流目標(biāo)流輸入緩沖區(qū)(讀)輸出緩沖區(qū)(寫)流的提取運算符流的插入運算符文本文件的寫操作是向流中寫一個字符流的插入運算符,例1:將文件file_from拷貝到文件file_to中去,#include#includeintCopyFile(char*file_from,char*file_to)/file_from:輸入文件名(源文件);file_to:輸出文件名(目標(biāo)文件)charch;/文件不存在則打開失敗ifstreamfrom(file_from,ios:in|ios:nocreate);/以文本方式打開if(!from)coutCannotopenfile_fromforinput!n;return0;/返回0表示復(fù)制文件不成功ofstreamto(file_to);/文件不存在則創(chuàng)建新文件if(!to)coutCannotopenfile_toforoutput!n;return0;/從流from中讀一個字符到ch中,成功的話則寫入to,否則文/件的每個字符都讀完了while(from.get(ch)to.put(ch);from.close();to.close();/關(guān)閉文件return1;/返回1表示文件復(fù)制成功,例2:把一個整數(shù)、一個浮點數(shù)和一個字符串寫到名為out.txt的文本文件中,#includeintmain()ofstreamoutfile;outfile.open(out.txt);if(!outfile)coutCannotopenout.txtforoutput!n;return0;/返回0表示打開文件不成功floatf=123.23;intn=10;outfilenfn;outfilefchstr;coutnfchn;cout運算符號跳過空白符號(如空格,回車),然后讀入對應(yīng)于輸入對象類型的字符,例4:百錢買百雞,#include#includevoidmain()inti,j,k;chara28;ofstreamofile(d:myfile.txt);/打開文件ofile公雞母雞小雞endl;for(i=0;i,它不能讀白字符if(ai=n)break;i+;/把文件中的第一行(到n)內(nèi)容讀入a字符數(shù)組ai=0;/a加上結(jié)束符,成為完整的字符串coutijk;/由文件讀入if(ifile.eof()!=0)break;coutsetw(6)isetw(10)jsetw(10)kendl;/屏幕顯示ifile.close();,myfile.txt,公雞母雞小雞02575418788118112484,例5,#include/包含#include#includeclassinventory/產(chǎn)品目錄charDescription20;charNo10;intQuantity;doubleCost;doubleRetail;/零售價public:inventory(char*=#,char*=0,int=0,double=0,double=0);voiddisplay();Bdatatofile(ofstream,inventory:inventory(char*des,char*no,intquan,doublecost,doubleret)strcpy(Description,des);strcpy(No,no);Quantity=quan;Cost=cost;Retail=ret;voidinventory:display()cout.setf(ios:left);coutsetw(20)Descriptionsetw(10)No;cout.unsetf(ios:left);/要改為右對齊,先清左對齊cout.setf(ios:right);coutsetw(10)Quantitysetw(10)Costsetw(10)Retailendl;,inventory:Bdatatofile(ofstream/由此可見讀和寫是完全對稱的過程,次序決不能錯,voidmain()inventorycar1(夏利2000,805637928,156,80000,105000),car2;inventorymotor1(金城125,93612575,302,10000,13000),motor2;ofstreamddatafile(d:Ex9_10.data,ios:out|ios:binary);car1.Bdatatofile(ddatafile);motor1.Bdatatofile(ddatafile);cout對象car1:endl;car1.display();cout對象motor1:endl;motor1.display();cout對象car2:endl;car2.display();cout對象motor2:endl;motor2.display();ddatafile.close();ifstreamsdatafile(d:Ex9_10.data,ios:in|ios:binary);/重新打開文件,從頭讀取數(shù)據(jù)car2.Bdatafromfile(sdatafile);/從文件讀取數(shù)據(jù)拷貝到對象car2if(sdatafile.eof()=0)cout讀文件成功endl;cout對象car2:endl;car2.display();motor2.Bdatafromfile(sdatafile);/繼續(xù)從文件讀取數(shù)據(jù)拷貝到對象motor2if(sdatafile.eof()=0)cout讀文件成功endl;cout對象motor2:endl;motor2.display();sdatafile.close();,- 1.請仔細(xì)閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 合工大計算機學(xué)院 程序設(shè)計 10第十章 C+的輸入輸出 合工大 計算機 學(xué)院 10 第十 C+ 輸入輸出
鏈接地址:http://m.appdesigncorp.com/p-11651273.html