File Operations in VC
2004-04-08 15:58
363 查看
1:Find the file
CString strFileName;
CFileFind finder;
BOOL bWorking=finder.FindFile(”c:\\windows\\*.cab”);
if(bWorking)
{
bWorking=finder.FindNextFile();
strFileName=finder.GetFileName();//or finder.GetFileTitle();
}
2:Open or Save file
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,”All Files(*.*)|*.*||”,AfxGetMainWnd());
3:Read and Write File
//Read File
char cRead[10];
CFile mFile(_T(”test.txt”),CFile::modeRead);
if(mFile.GetLength()<2)
return ;
mFile.Read(cRead,10);
mFile.Close();
//Write File:
CFile mFile(_T(”test.txt”),CFile::modeWrite|CFile:modeCreate);
mFile.Write(cRead,10);
mFile.Flush();
mFile.Close();
More Powerful Class: CArchive
//Write
CString strTemp;
CFile mFile;
mFile.Open(”c:\\test.txt”,CFile::modeWrite|CFile::modeNoTruncate|CFile::modeCreate);
CArchive ar(&mFile,CArchive::store);
ar<<strTemp;
ar.Close();
mFile.Close();
//Read
CFile mFile;
if(mFile.Open(”c:\\test.txt”,CFile::modeRead)==0)
return;
CArchive ar(&mFile,CArchive::load);
ar>>strTemp;
ar.Close();
mFile.Close();
using CArchive, you can also to WriteObject,ReadObject,WriterClass,ReadClass
if you only to read or write a simple line string, use CStdioFile
CStdioFile mFile;
CFileException mExcept;
mFile.Open(”c:\\test.txt”,CFile::modeWrite,&mExcept);
CString str=”hello world”;
mFile.WriteString(string);
mFile.Close();
4:
Using temp file
char szTempPath[_MAX_PATH],szTempFile[_MAX_PATH];
GetTempPath(_MAX_PATH,szTempPath);
GetTempFileName(szTempPath,_T(”my_”),0,szTempFile);
CFile m_tempFile(szTempFile,CFile::modeCreate|CFile::modeWrite);
char m_char='a';
m_TempFile.Write(&m_char,2);
m_TempFile.Close();
5:Copy or remove file:
For in the MFC there is no methods or classes,so use SDK functions: CopyFile(),DeleteFile(),CreateDirectory(),MoveFile()
CString strFileName;
CFileFind finder;
BOOL bWorking=finder.FindFile(”c:\\windows\\*.cab”);
if(bWorking)
{
bWorking=finder.FindNextFile();
strFileName=finder.GetFileName();//or finder.GetFileTitle();
}
2:Open or Save file
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,”All Files(*.*)|*.*||”,AfxGetMainWnd());
3:Read and Write File
//Read File
char cRead[10];
CFile mFile(_T(”test.txt”),CFile::modeRead);
if(mFile.GetLength()<2)
return ;
mFile.Read(cRead,10);
mFile.Close();
//Write File:
CFile mFile(_T(”test.txt”),CFile::modeWrite|CFile:modeCreate);
mFile.Write(cRead,10);
mFile.Flush();
mFile.Close();
More Powerful Class: CArchive
//Write
CString strTemp;
CFile mFile;
mFile.Open(”c:\\test.txt”,CFile::modeWrite|CFile::modeNoTruncate|CFile::modeCreate);
CArchive ar(&mFile,CArchive::store);
ar<<strTemp;
ar.Close();
mFile.Close();
//Read
CFile mFile;
if(mFile.Open(”c:\\test.txt”,CFile::modeRead)==0)
return;
CArchive ar(&mFile,CArchive::load);
ar>>strTemp;
ar.Close();
mFile.Close();
using CArchive, you can also to WriteObject,ReadObject,WriterClass,ReadClass
if you only to read or write a simple line string, use CStdioFile
CStdioFile mFile;
CFileException mExcept;
mFile.Open(”c:\\test.txt”,CFile::modeWrite,&mExcept);
CString str=”hello world”;
mFile.WriteString(string);
mFile.Close();
4:
Using temp file
char szTempPath[_MAX_PATH],szTempFile[_MAX_PATH];
GetTempPath(_MAX_PATH,szTempPath);
GetTempFileName(szTempPath,_T(”my_”),0,szTempFile);
CFile m_tempFile(szTempFile,CFile::modeCreate|CFile::modeWrite);
char m_char='a';
m_TempFile.Write(&m_char,2);
m_TempFile.Close();
5:Copy or remove file:
For in the MFC there is no methods or classes,so use SDK functions: CopyFile(),DeleteFile(),CreateDirectory(),MoveFile()
相关文章推荐
- 一个不错的开发者网站,英文
- 一个很好的网站:微软高级培训论坛
- 推荐一个中文mda网站
- 推荐一个中文mda网站
- 转载JGTM' 2004[MVP]有关AOP的三篇精彩文章
- AOP概念理解
- 微软与Sun冰释前嫌 全面合作共同对抗Linux?
- 让大家久等了:终于完成了AOP尝鲜系列之第三部[JGTM'2004 [MVP]文章转载]
- Linux 内核的版本历史
- Interposer - 实现AOP的又一个方法...
- 可以修改因为某些网站修改IE默认主页造成问题的小脚本(源码提供)
- 也谈win2000下tomcat&apache的配置
- Apache Ant操作手册(一)
- 12种看好Open source的原因。
- add a property table dlg is simple.add a dig with var:CTabCtr's son:CTabSheet m_sheet,and 3 dialog son as pages;then ok.
- add scroolbar to dialog is easy,add flag in dialgon property , then 4 func are need to change or add.
- 日誌的學習點滴(3)
- Web界面配置Tomcat连接池---我得一点个人心得
- 在SCO Openserver 5.0.6上安装j2se 1.3.1_06开发环境.
- 在datagrid的某列上包含dropdownlist控件的一种方法