檢視 模板:程式設計:C++:檔案 的原始碼
←
模板:程式設計:C++:檔案
前往:
導覽
,
搜尋
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
管理員
您可以檢視並複製此頁面的原始碼。
==C++的檔案讀寫== ((參考課本第16章)) 我們所認知的檔案是放在儲存媒體(硬碟、網路硬碟、磁帶等)上的,可以透過檔案總管對檔案進行open、close、copy、delete等動作;實際上,在我們的作業系統中,“檔案“基本上不單純,檔案這個名詞被抽象化可代表作業系統中所有的裝置,如果是在可讀寫的儲存媒體上,那麼這個檔案是可讀寫的,若是在僅供讀取的裝置上(光碟機),那麼這個檔案就只能被讀取。因此,程式要存取裝置,只要對該裝置的代表檔案進行開啟,對該裝置檔案進行讀或寫的動作,這樣的做法,將裝置的存取動作簡單化成為對檔案的讀寫,不必特別針對每個裝置的特性來處理輸入或輸出的動作。 因此,在C++中,有所謂的輸出輸入的資料流(istream, ostream類別),從這2個類別再向下衍生出2個檔案的輸入輸出類別:ifstream與ofstream。 而fstream就同時衍生自ifstream與ofstrean,同時具備對檔案的讀寫能力。底下是幾個操作檔案需注意的事項: *檔案在操作上一定是先通過open()手段,指定一個欲開啟的檔案,在進行開檔的時候,可以指定要對檔案的操作型式,像是讀取、寫入、附加資料等。 *檔案的讀取方式:1.讀取一定數量的字元到一個資料緩衝區(通常是一個字元陣列),2.讀取單一個字元,3,讀取文字檔案中的一整行到一個資料緩衝區。 *一個檔案打開後,檔案指標指向檔頭,讀取或寫資料時,此指標會逐一字元往後,在讀檔案時,若讀出來的字元為"EOF"(End Of File),即表示到達檔案結尾,此時讀取檔案動作就應該停止。 *檔案打開後,若是有寫資料的動作,可以下flush(方法)將在資料緩衝區的資料寫回檔案,以確保所有的資料都正確地存入檔案。 *程式最終,要將打開的檔案以close()方法進行關檔的動作。 檔案的寫入方式最簡單,以前使用過的輸出cout本身就是一個檔案,當我們開啟一個檔案要進行寫入動作的時候,只需要將檔案的物件參考,比方說是file,替換掉cout即可,例如: cout << "This is a test!\n"; 換成: file << "This is a test!\n"; ===課堂練習=== 將下列文字放入一個文字檔,再寫一程式將文字檔內容: #秀在螢幕上 #寫入另一個檔案中 注意:寫完請舉手要求老師或小老師檢查。 <pre> 問題:印出一數N的質因數 做法: 判斷2~(N-1)是否為N的因數,並且是否為質數 (i迴圈開始) 1.使用一迴圈敘述,使用迭代變數i,下限值為2,上限值為N-1,i若能整除N,則 (j迴圈開始) 1.1 使用一個布林變數isPrime,初值為true(此布林變數表示N是否為質數,程式一開始先認定N為質數) 1.2 使用一迴圈敘述,使用迭代變數j,下限值為2,上限值為i-1,若j可整除i,設定isPrime為false,跳出j迴圈 (j迴圈結束) 1.3 若isPrime為tru則輸出j (i迴圈結束) 2.結束 程式範例解答 #include <iostream> using namespace std; void main(void){ int n; cout<<"請輸入"; cin>>n; for(int i=2;i<= n-1;i++ ){ if(n%i==0){ bool Isprime=true; for(int j=2;j<=i-1&& Isprime;j++){ if(i%j==0){ Isprime=false; break; } } if (Isprime){ cout<<i<<endl; } } } system("pause"); } </pre> 這樣就可以將字串"This is a test!\n"寫入檔案。
返回至
模板:程式設計:C++:檔案
。
導覽選單
個人工具
登入
命名空間
模板
討論
變體
檢視
閱讀
檢視原始碼
檢視歷史
更多
搜尋
導覽
首頁
基本資料
專案計劃
教授課程(本學期)
創意3D列印實務
程式設計
資料結構
WordPress
教授課程(所有)
資訊安全
科技英文
資料庫管理
管理專業英文
管理資訊系統
作業系統
專利與發明
程式設計
學生專題
網路概論
技術與學習
Delphi XE
3D印表機
SCJP考題
Arduino/pcDuino
Android
Linux/Unix
虛擬/雲端作業系統
網站功能
Wiki安裝設定筆記
隨機頁面
說明
工具
連結至此的頁面
相關變更
特殊頁面
頁面資訊