http://www.cnblogs.com/awen/archive/2012/08/20/2647350.html
http://openhome.cc/Gossip/CppGossip/UnFormatFileIO.html
從來沒有好好用心學過c++,寫SDK時覺得很吃力,覺得自己實在是太弱了T_T,
該努力的時候到了!!!!先從簡單的開始吧!!!!
先找個免費的編譯器,發現CodeBlock還蠻好用的,介面也很漂亮
-----------------------------
以上廢話分隔線
------------------------------
C++要讀寫檔要引用
#include
<fstream>
ios的性質有五種
ios::in 檔案open為輸入模式(istream
default)
ios::out 檔案open為寫入(ostream
default)
ios::ate 從檔案尾端輸入輸出
ios::app 在檔案尾端以append模式寫入
ios::trunc 如果檔案存在,則清除檔案內容
ios::binary 以二進位模式open檔案
|
常用在檔案處理的函式
open(file,mode) close() is_open() eof() write(buffer,n) read(buffer,n) get(ch) getline(buffer,sizeof(buffer)) |
在讀檔可以用
read(buffer,n)
get(ch)
getline(buffer,sizeof(buffer))
下面任意使用一種都會印出一樣的結果,寫兩個也只會印一個
以ios::app|ios::in打開,不管有沒有檔,都是失敗。
寫入檔案有兩種方式
file
<< input data
file.write(buffer,strlen(buffer));
如果有加ios::app則寫入的資料會接著原本的檔案資料後面寫
fstream流,默認是ios::in,所以如果沒有檔,ios::app和ios::ate都是失敗,
以ios::app|ios::out,如果沒有檔則創建檔,如果有檔,則在檔尾追加
以ios::ate|ios::out打開,如果沒有檔則創建檔,如果有,則清空檔。
以ios::ate|ios::out|ios::in打開,如果沒有檔,則打開失敗,有檔則定位到檔案結尾
以ios::app|ios::out,如果沒有檔則創建檔,如果有檔,則在檔尾追加
以ios::ate|ios::out打開,如果沒有檔則創建檔,如果有,則清空檔。
以ios::ate|ios::out|ios::in打開,如果沒有檔,則打開失敗,有檔則定位到檔案結尾
沒有留言:
張貼留言