chapter 7 2
Download
Skip this Video
Download Presentation
Chapter 7-2

Loading in 2 Seconds...

play fullscreen
1 / 23

Chapter 7-2 - PowerPoint PPT Presentation


  • 89 Views
  • Uploaded on

Chapter 7-2. 檔案管道. 為何要使用檔案 (files) ?. 之前談過,當宣告單一變數來輸入全班成績時 (chi,eng,math,avg,sum…) ,前一位同學的成績將被後一位同學的成績給覆蓋掉,無法查詢之前的個人成績 使用陣列後,查詢之前的成績已非難事,然而,無論是陣列或單一變數,都將面臨關機後資料即流失的命運 倘若能將資料以檔案型式儲存在磁碟中,即使關機也不怕資料流失. 如何將資料存入與讀出磁碟?. C++ 提供檔案輸入/輸出的類別,稱為檔案管道函數庫 fstream.h

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Chapter 7-2 ' - jarah


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
chapter 7 2

Chapter 7-2

檔案管道

files
為何要使用檔案(files)?
  • 之前談過,當宣告單一變數來輸入全班成績時(chi,eng,math,avg,sum…),前一位同學的成績將被後一位同學的成績給覆蓋掉,無法查詢之前的個人成績
  • 使用陣列後,查詢之前的成績已非難事,然而,無論是陣列或單一變數,都將面臨關機後資料即流失的命運
  • 倘若能將資料以檔案型式儲存在磁碟中,即使關機也不怕資料流失
slide3
如何將資料存入與讀出磁碟?
  • C++提供檔案輸入/輸出的類別,稱為檔案管道函數庫
    • fstream.h
    • fstream.h包含了iostream.h,因此,程式中含括了fstream.h後,無須再含括iostream.h
  • 類別
    • ofstream支援檔案寫入
    • ifstream支援檔案讀出
    • fstream支援檔案寫入及讀出
slide4
字串的輸入
  • 將字串寫入檔案中
    • 宣告方式

ofstream 物件名稱(檔案名稱);

ofstream outf("datafile.txt");

物件名稱可以自訂,在程式中配合插入運算子(<<)使用

slide5
字串的輸入 (續)
  • 物件名稱的用法與cout類似

outf<<"Hello !"<<endl<<"Good-bye";

slide6
字串的輸出
  • 將字串自檔案中讀出
    • 宣告方式
    • 物件名稱的用法與cin相類似

ifstream 物件名稱(檔案名稱);

ifstream inf("datafile.txt");

在程式中配合擷取

運算子(>>)使用

char buffer[80];

inf>>buffer;

slide7
字串的輸出(續)

//假如檔案開啟失敗

為何分成這麼多列?

因為,擷取運算子會將空白字元當作結束字元之故

slide8
字串的輸出(續)
  • 若要正常顯示於螢幕上,可使用getline()函數
slide13
字元的輸入
  • 將指定字元輸出至檔案的方法
    • 物件名稱<<ch;
    • 物件名稱.put(ch);
slide15
字元輸出
  • 自開啟的檔案中一次讀入一個字元給指定的字元變數的方法
    • 物件名稱.get(ch);
    • ch=inf.get();
atoi itoa atol ltoa atof
atoi(),itoa(),atol(),ltoa(),atof()
  • stdlib.h
  • atoi()文字轉換為整數
  • atol()文字轉換為長整數
  • atof()文字轉換為浮點數
  • itoa()整數轉換為字串
  • ltoa()長整數轉換為字串
homework
Homework
  • 以檔案儲存M1及M2兩個二維陣列,寫一程式讀出此檔案中的陣列,並進行陣列相加(M1+M2),將結果存入M3陣列中,並於螢幕顯示其結果
ad