CFile寫文件
基本的寫文件采用的是文件流,舉個栗子:
CFile m_file; //建立一個CFile對象
//打開文件,如果不存在該文件就創建文件
if(!file.Open("file.txt",CFile::modeCreate|CFile::modeWrite))
{
AfxMessageBox( "can not open file! ");
return false;
}
CString output = "Life is Beautiful.";
m_file.Write(output,strlen(output));
file.Flush(); //將在緩沖區中的字符寫入文件中
file.Close(); //關閉文件
return true;
如果遇到目錄未創建的,可以在前面判斷下並創建所需目錄,CFile中不能自動創建目錄。注意目錄的寫法是雙斜杠。
CFileFind finder;
if(!finder.FindFile("D://temp"))
CreateDirectory("D://temp",NULL);
CFile讀文件
逐行讀文件,如果就用CFile估計得先判斷'\r\n'的位置,再通過位置計算長度來獲得了。但是可以用CStdioFile,是一種繼承了CFile的讀文件方式。
CStdioFile inFile; inFile.Open(fileName,CFile::modeRead); CString text while(inFile.ReadString(text)) { } inFile.Close();
數據流讀文件