1、打开文件,使用记事本打开。
2、在文件末尾添加一行文字,如mfc保存到txt换行。
3、选择文件,然后选择另存为,在文件类型中选择文本文件txt,然后点击保存即可。
CFile savfile这个 CFile对象还没打开一个文件就拿来用了。
看下MSDN上CFile类的说明,创建CFile对象的时候要么用带参数的构造函数来打开一个文件,要么用 CFile::Open方法。
CFile::CFile
CFile( )
CFile(int hFile)
CFile(LPCTSTR
lpszFileName,UINT nOpenFlags)
throw(CFileException)
参数:
hFile已打开的文件句柄。
lpszFileName所需文件的路径字符串,此路径可为相对的也可为绝对的路径。
nOpenFlags共享和访问模式,指定当打开文件时进行的动作,可以将以下所列用OR(|) *** 作符联起来。至少应有一个访问权限和一个共享选项,modeCreate和modeNoInherit是可选的。值如下所示:·
CFile::modeCreate
调用构造函数构造一个新文件,如果文件已存在,则长度变成0。
·
CFile::modeNoTruncate
此值与modeCreate组合使用。如果所创建的文件已存在则其长度不变为0。因而此文件被打开,或者作为一个新文件或者作为一个已存在的文件。这将是很有用的,例如当打开一个可能存在也可能不存在的文件时。这个选项也可用于CStdioFile.
·
CFile::modeRead
打开文件仅供读。
·
CFile::modeReadWrite
打开文件供读写。
·
CFile::modeWrite
打开文件仅供写。
·
CFile::modeNoInherit
阻止文件被子进程继承。
·
CFile::ShareDenyNone
不禁止其它进程读或写访问,打开文件。如果文件已被其它进程以兼容模式打开,则Create失败。
·
CFile::ShareDenyRead
打开文件,禁止其它进程读此文件。如果文件已被其它进程以兼容模式打开,或被其它进程读,则Create失败。
·
CFile::ShareDenyWrite
打开文件,禁止其它进程写此文件。如果文件已被其它进程以兼容模式打开,或被其它进程写,则Create失败。
·
CFile::ShareExclusive
以独占模式打开文件,禁止其它进程对文件的读写。如果文件已经以其它模式打开读写(即使被当前进程),则构造失败。
·
CFile::ShareCompat
此标志在32位MFC中无效。此标志在使用CFile::Open时映射为CFile::ShareExclusive。
·
CFile::typeText
对回车换行设置特殊进程(仅用于派生类)。
·
CFile::typeBinary
设置二进制模式(仅用于派生类)。
说明:
缺省的构造函数不打开文件,而是将m_hFile设置为CFile::hFileNull。因为此构造函数不产生异常,故不使用TRY/CATCH逻辑 *** 作。使用Open成员函数,然后直接测试异常状态。有关异常处理的策略,可参阅联机文档“Visual
C++程序员指南”中的“异常”。
带一个参数的构造函数构造一个CFile对象,对应于由hFile标识的 *** 作系统文件。对访问模式或文件类型不作检查。当CFile对象被析构时, *** 作系统文件不会关闭,必须手工关闭它。
带两个参数的构造函数构造一个CFile对象,并打开给定路径的相对应的 *** 作系统文件。构造函数将第一个构造函数和Open成员函数组合起来。当打开文件出错时产生一个异常。通常这说明这种错误不可解决,用户将被警告。
示例:
//
example for CFile::CFile
char* pFileName = "test.dat"
TRY
{
CFile
f(pFileName, CFile::modeCreate |
CFile::modeWrite)
}
CATCH(CFileException,e)
{
#ifdef
_DEBUG
afxDump<<"File could not be
opened"<<e->m_cause<<"\n"
#endif
}
END_CATCH
首先打开工程文件的资源视图,再打开“String Table”,找到IDR_MAINFRAME。ID为:IDR_MAINFRAME,Value为128,caption里面的值就是你要找的东西!IDR_MAINFRAME字符串资源中包含7个子串,分别以\n结束,即如下格式:
<windowTitle>\n<docName>\n<fileNewName>\n<filterName>\n<filterExt>\n<regFileTypeId>\n<regFileTypeName>\n
(1)CDocTemplate::windowTitle,主窗口标题栏上的字符串,MDI程序不需要指定,将以IDR_MAINFRAME字符串为默认值。
(2)CDocTemplate::docName,缺省文档的名称。如果没有指定,缺省文档的名称是无标题。
(3)CDocTemplate::fileNewName,文档类型的名称。如果应用程序支持多种类型的文档,此字符串将显示在"File/New"对话框中。如果没有指定,就不能够在"File/New"对话框处理这种文件。
(4)CDocTemplate::filterName,文档类型的描述和一个适用于此类型的通配符过滤器。这个字符串将出现在“File/Open”对话框中的文件类型列表框中。要和CDocTemplate::filterExt一起使用。
(5)CDocTemplate::filterExt,文档的扩展名。如果没有指定,就不能够在“File/Open”对话框中处理这种文档。要和CDocTemplate::filterName一起使用。
(6)CDocTemplate::regFileTypeId,如果你以::RegisterShellFileTypes向系统的注册表注册文件类型,此值会出现在HEY_CLASSES_ROOT之下成为其子项,并仅供Windows内部使用。如果没有指定,这种文件类型就无法注册。
(7)CDocTemplate::regFileTypeName,这也是存储在注册表中的文件类型名称。它会显示于程序中用以访问注册表的对话框内。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)