读书人

怎么用文件打开功能得到所选择的多个文

发布时间: 2012-03-18 13:55:39 作者: rapoo

如何用文件打开功能得到所选择的多个文件的文件名?
CFileDialog newDlg(TRUE, "*.dat ", " ",OFN_EXPLORER|OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT,
"**文件 (*.dat)|*.dat|所有文件 (*.*)|*.*|| ",NULL );

[解决办法]
POSITION pos;
CString strPathName;

if(dlg.DoModal() == IDOK)
{
pos = dlg.GetStartPosition();
while(pos)
{
strPathName = dlg.GetNextPathName(pos);
}
}

strPathName 就是选择的文件名(多个)

[解决办法]
多选之后就只能用GetNextPathName, 用GetFileTitle之类的只能得到第一个的.你要自己写函数从PathName中得到Title了哦!
[解决办法]
来晚了一步

补充一点

char* szBuf = new char[1000*256];
Dlg.m_ofn.lpstrFile = szBuf;
Dlg.m_ofn.nMaxFile = 1000*256 - 8;

需要设置 选中的文件太多 szBuf就要足够大

读书人网 >VC/MFC

热点推荐