C++文件讀寫操作
1、文件寫入
ofstream類:
ofstream( const char* szName, int nMode = ios::out, int nProt = filebuf::openprot );
szName:指定將要打開的文件名;
nMode:指定文件打開的模式,包括:
ios::app --先執行一個定位,將文件指針移動至文件末尾,當向文件寫入新數據時,將總是添加到文件的末尾處;
ios::ate --先執行一個定位,將文件指針移動至文件末尾,當向文件寫入第一個新的字節數據時,將在文件的末尾處添加,但隨後寫入的其它字節數據,將被寫入到當前位置;
ios::in --指定該模式時,已存在的原始文件將不會被截斷;
ios::out --打開文件,用於存放所有的ofstream對象的輸出數據;
ios::trunc --如果文件已存在,將被清空;如果指定了ios::out模式而沒有指定ios::app/ios::ate/ios::in模式,則默認執行該模式清空文件中的數據內容;
ios::nocreate --如果文件不存在,則函數調用失敗;
ios::noreplace --如果文件已存在,則函數調用失敗;
ios::binary --以二進制方式打開文件(默認以文本方式);
nProt:指定文件保護規則,包括:
filebuf::sh_compat --兼容共享模式;
filebuf::sh_none --排他獨占模式,不共享;
filebuf::sh_read --允許讀共享;
filebuf::sh_write --允許寫共享;
2、文件讀取
ifstream類:
ifstream( const char* szName, int nMode = ios::in, int nProt = filebuf::openprot );
構造方法同ofstream類
3、須包含頭文件:#include <fstream.h>
例:
#include <fstream.h> ofstream ofs("1.txt"); ofs.write("hello world!", strlen("hello world!")); ofs.close();
ifstream ifs("1.txt"); char ch[100]; memset(ch, 0, 100); ifs.read(ch, 100); ifs.close(); MessageBox(ch);
C++文件讀寫操作