如何判断文件读取时打开的是哪个文件

镜花-水月 2016-08-26 02:58:05
现在有3个文件,用界面上的3个按钮分别打开,进行文件读取并进行数据显示,文件打开是用文件对话框进行打开的。另外有一个按钮是对刚刚打开的文件进行数据改写,现在问题是如何判断我进行文件读取时打开的是哪个文件呢?好让我对应修改其中的数据,请指教,最好能给出代码。谢谢!
...全文
523 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿源是少年 2016-08-29
  • 打赏
  • 举报
回复
把你打开时的文件名和文件指针或句柄以Key-Value形式存入map或者自定义结构体struct{CString strName,CFile* pFile},操作文件你要知道文件名是什么,然后去拿指针
镜花-水月 2016-08-27
  • 打赏
  • 举报
回复
引用 9 楼 zgl7903 的回复:
如果要打开的文件和应用程序相关的话, 可以用 GetModuleFileName 获取当前应用程序文件名(包含完整路径),由此可以构造出一个绝对路径
对了,我是要判断最近打开的是哪个文件,然后才能对其改写其中的数据,所以用什么方法可以判断出我最近打开的是哪个文件呢?
zgl7903 2016-08-26
  • 打赏
  • 举报
回复
如果要打开的文件和应用程序相关的话, 可以用 GetModuleFileName 获取当前应用程序文件名(包含完整路径),由此可以构造出一个绝对路径
镜花-水月 2016-08-26
  • 打赏
  • 举报
回复
引用 7 楼 zgl7903 的回复:
CFileDialog dlg(true); if(dlg.DoModal() == IDOK) { CString fileName = dlg.GetPathName(); //选择的文件名 …… }
你这是文件打开对话框的方式,我现在那个写文件的按钮就是想不要打开文件对话框方式来获取打开文件的路径,该怎么获取呢?
zgl7903 2016-08-26
  • 打赏
  • 举报
回复
CFileDialog dlg(true); if(dlg.DoModal() == IDOK) { CString fileName = dlg.GetPathName(); //选择的文件名 …… }
镜花-水月 2016-08-26
  • 打赏
  • 举报
回复
引用 5 楼 lx624909677 的回复:
[quote=引用 3 楼 zzj010 的回复:] [quote=引用 1 楼 lx624909677 的回复:] 在文件读取前肯定有一个打开文件的动作,打开的动作就一定要知道文件的路径才能打开,所以在打开的时候,就知道了要读写的文件是哪个文件了
你的意思是获取文件路径吗?我是用打开对话框打开文件的,怎么区分3个文件呢?[/quote] 是一次选择了三个文件?在直接文件读写前,肯定要先有一个文件的操作对象吧,这个操作对象是一个对象对应一个文件的呀,如果是每次都选择的一个文件,那么在点击确定之后,会返回你选择的文件的路径的[/quote] 没有返回啊,我是用打开对话框的方式打开文件的
lx624909677 2016-08-26
  • 打赏
  • 举报
回复
引用 3 楼 zzj010 的回复:
[quote=引用 1 楼 lx624909677 的回复:] 在文件读取前肯定有一个打开文件的动作,打开的动作就一定要知道文件的路径才能打开,所以在打开的时候,就知道了要读写的文件是哪个文件了
你的意思是获取文件路径吗?我是用打开对话框打开文件的,怎么区分3个文件呢?[/quote] 是一次选择了三个文件?在直接文件读写前,肯定要先有一个文件的操作对象吧,这个操作对象是一个对象对应一个文件的呀,如果是每次都选择的一个文件,那么在点击确定之后,会返回你选择的文件的路径的
镜花-水月 2016-08-26
  • 打赏
  • 举报
回复
引用 2 楼 zgl7903 的回复:
CFile::GetFilePath Obtaining a File Name From a File Handle
能说详细一点吗
镜花-水月 2016-08-26
  • 打赏
  • 举报
回复
引用 1 楼 lx624909677 的回复:
在文件读取前肯定有一个打开文件的动作,打开的动作就一定要知道文件的路径才能打开,所以在打开的时候,就知道了要读写的文件是哪个文件了
你的意思是获取文件路径吗?我是用打开对话框打开文件的,怎么区分3个文件呢?
lx624909677 2016-08-26
  • 打赏
  • 举报
回复
在文件读取前肯定有一个打开文件的动作,打开的动作就一定要知道文件的路径才能打开,所以在打开的时候,就知道了要读写的文件是哪个文件了

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧