当前位置: 代码迷 >> VC >> 关于CFileDialog:GetNextPathName(POSITION& pos)的有关问题
  详细解决方案

关于CFileDialog:GetNextPathName(POSITION& pos)的有关问题

热度:6753   发布时间:2013-02-25 00:00:00.0
关于CFileDialog::GetNextPathName(POSITION& pos)的问题
在vs2005下,

if   (dlg.DoModal()   ==   IDOK)
{
POSITION   pos   =   dlg.GetStartPosition();

while   (pos   !=   0)
{
CString   s   =   dlg.GetNextPathName(pos);
}
}
,如果只选择了一个文件,则GetNextPathName会返回 "c:\1.txt "这样的字串,
如果选择了多个文件,则会返回这样的字串: "c:\\1.txt ",这边为什么会有两个斜杠呢?怎么才能把它去掉?

------解决方案--------------------------------------------------------
s.Replace( "\\\\ ", "\\ ");

- -!
------解决方案--------------------------------------------------------
我这里没发现这种现象。把你前面的代码(构造、设置dlg的代码)贴出来看看。
------解决方案--------------------------------------------------------
绝对路径与相对路径?
------解决方案--------------------------------------------------------
好像Windows下的路径表示就是这样的吧
------解决方案--------------------------------------------------------
不是吧,你的strBasePath应该是C:才对,在程序中,路径中的反斜杠要用两个反斜杠表示,而当你跟踪调试时会发现编译器会把双斜杠自动转换为了一个斜杠
  相关解决方案