C++文件操作的6种方式
2019獨角獸企業重金招聘Python工程師標準>>>
純C語言讀取文件方式
寫文件
FILE *pFile;
pFile=fopen("jingge.txt","w");
fwrite("http://blog.sina.com.cn/liyuanjinglyj",1,strlen("http://blog.sina.com.cn/liyuanjinglyj")+1,pFile);
fseek(pFile,0,SEEK_SET);
fwrite("liyuanjing",1,strlen("liyuanjing"),pFile);
//fclose(pFile);
fflush(pFile);
讀文件
FILE *pFile;pFile=fopen("jingge.txt","r");
char *pChr;
fseek(pFile,0,SEEK_END);
int len=ftell(pFile);
pChr=new char[len+1];
rewind(pFile);
fread(pChr,1,len,pFile);
fclose(pFile);
pChr[len]=0;
MessageBox(pChr);
C++讀寫文件方式
寫文件
ofstream ofs("4.txt");
ofs.write("http://blog.sina.com.cn/liyuanjinglyj",strlen("http://blog.sina.com.cn/liyuanjinglyj"));
ofs.close();
讀文件
ifstream ifs("4.txt");
char ch[100];
memset(ch,0,100);
ifs.read(ch,100);
ifs.close();
MessageBox(ch);
Windows API讀寫文件方式
寫文件
HANDLE pFile;
pFile=CreateFile("5.txt",GENERIC_WRITE,0,NULL,CREATE_NEW,FILE_ATTRIBUTE_NORMAL,NULL);
DWORD dwWrite;
WriteFile(pFile,"http://blog.sina.com.cn/liyuanjinglyj",strlen("http://blog.sina.com.cn/liyuanjinglyj"),&dwWrite,NULL);
CloseHandle(pFile);
讀文件
HANDLE hFile;hFile=CreateFile("5.txt",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
char ch[100];
DWORD dwRead;
ReadFile(hFile,ch,100,&dwRead,NULL);
ch[dwRead]=0;
CloseHandle(hFile);
MessageBox(ch);
CFile類讀寫文件方式
寫文件
CFile file("6.txt",CFile::modeCreate | CFile::modeWrite);
file.Write("http://blog.sina.com.cn/liyuanjinglyj",strlen("http://blog.sina.com.cn/liyuanjinglyj"));
file.Close();
讀文件
CFile file("6.txt",CFile::modeRead);
char *pChr;
DWORD dwFileLen;
dwFileLen=file.GetLength();
pChr=new char[dwFileLen+1];
pChr[dwFileLen]=0;
file.Read(pChr,dwFileLen);
file.Close();
MessageBox(pChr);
MFC提供的CFileDialog方式讀寫文件
寫文件
CFileDialog filedlg(FALSE);
filedlg.m_ofn.lpstrTitle="靜哥另存為對話框";
filedlg.m_ofn.lpstrFilter="Text file(*.txt)\0*.txt\0ALL file(*.*)\0*.*\0\0";
filedlg.m_ofn.lpstrDefExt="txt";
if(IDOK==filedlg.DoModal())
{
CFile file(filedlg.GetFileName(),CFile::modeCreate | CFile::modeWrite);
file.Write("http://blog.sina.com.cn/liyuanjinglyj",strlen("http://blog.sina.com.cn/liyuanjinglyj"));
file.Close();
}
讀文件
CFileDialog filedlg(TRUE);
filedlg.m_ofn.lpstrTitle="靜哥另存為對話框";
filedlg.m_ofn.lpstrFilter="Text file(*.txt)\0*.txt\0ALL file(*.*)\0*.*\0\0";
if(IDOK==filedlg.DoModal())
{
CFile file(filedlg.GetFileName(),CFile::modeRead);
char *pChr;
DWORD dwFileLen;
dwFileLen=file.GetLength();
pChr=new char[dwFileLen+1];
pChr[dwFileLen]=0;
file.Read(pChr,dwFileLen);
file.Close();
MessageBox(pChr);
}
CArchive類方式讀取文件
寫文件
CFile file("1.txt",CFile::modeCreate | CFile::modeWrite);
?CArchive ar(&file,CArchive::store);
?int i=1;
?char ch='a';
?CString str="http:liyuanjing.org";
?ar<<i<<ch<<str;
讀文件
CFile file("1.txt",CFile::modeRead);
?CArchive ar(&file,CArchive::load);
?int i;
?char ch;
?CString str;
?CString strResult;
?ar>>i>>ch>>str;
?strResult.Format("%d,%c,%s",i,ch,str);
?MessageBox(strResult);
轉載于:https://my.oschina.net/liyuanjinglyj/blog/77393
總結
以上是生活随笔為你收集整理的C++文件操作的6种方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在linux下使用多个tomcat
- 下一篇: ZF1.* 愤怒小鸟系列二:快速自定义创