得到文件路径的问题(PathStripToRoot,PathStripPath)

三文鱼也会飞 2006-03-05 09:53:54
我用
char sBuffer[MAX_PATH];
int i = Zero;
sBuffer[First_Bit] = Zero;
CFileDialog dlg(TRUE, NULL, NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT |OFN_ALLOWMULTISELECT,"All Files(*.*)|*.*||");
dlg.m_ofn.lpstrFile = sBuffer;
dlg.m_ofn.nMaxFile = MAX_PATH;
dlg.DoModal();

CString pathname;
POSITION pos = dlg.GetStartPosition(); // Get target path.
  pathname = dlg.GetNextPathName(pos );

这样的方法得到了被选择文件的路径:"E:\ASP\CD\server.asp"  (举个例子)

用PathStripPath((LPTSTR)(LPCTSTR)pathname)函数可以得到  "server.asp"
用PathStripToRoot((LPTSTR)(LPCTSTR)pathname)函数可以得到 "E:\"

但我想得到 "E:\ASP\CD" ,就是得到路径,哪位大侠知道应该怎么办?
...全文
549 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
三文鱼也会飞 2006-03-05
  • 打赏
  • 举报
回复
好的谢谢
三文鱼也会飞 2006-03-05
  • 打赏
  • 举报
回复
好的我试试
playcats(咪咪)
playcats 2006-03-05
  • 打赏
  • 举报
回复
POSITION pos = dlg.GetStartPosition();
CString pathname = dlg.GetNextPathName(pos ); // "E:\ASP\CD\server.asp"
int nPos = pathname.ReverseFind('\\');
pathname = pathname.Left(nPos); // "E:\ASP\CD"

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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