首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

!关于文件操作的有关问题! !

2012-02-04 
求助!!关于文件操作的问题! 在线等!!!选择文件,代码如下:CStringFileFiltercpp文件(*.*)|*.*|| CFileD

求助!!关于文件操作的问题! 在线等!!!
选择文件,代码如下:
CString   FileFilter   =   "cpp文件(*.*)|*.*|| ";  
CFileDialog   fileDlg(false, "*.cpp ", "*.cpp ",NULL,FileFilter,NULL);
if   (fileDlg.DoModal()==IDOK)
{
m_sFilePath=fileDlg.GetPathName();
UpdateData(FALSE);
}
这之后,打开另外一个文件1.txt(已存在)。代码如下:
int   ret;  
long   retf;

ret=_open(WATERMARK_DEFINITION,_O_RDWR   |   _O_BINARY,_S_IREAD);  

这里试过用fopen,CreateFile都不能成功。  

奇怪的是,如果不进行上边的
CFileDialog   fileDlg(false, "*.cpp ", "*.cpp ",NULL,FileFilter,NULL);
if   (fileDlg.DoModal()==IDOK)
操作,则可以成功打开文件。

百思不得其解~   请高手指点阿~

[解决办法]
#define WATERMARK_DEFINITION “1.txt”
==》
#define WATERMARK_DEFINITION "C:\\1.txt "

这个文件使用绝对路径试试是否可以正常打开。

如果可以的话,
检查程序的工作路径是否有被改变,
因为你的 1.txt 是使用相对路径打开的,
如果路径改变了,自然就打开失败······

热点排行