提取指定文件夹目录到INI文件
本文讲述,如何把指定文件夹目录提取到INI文件,如下:
1. 创建一个对话框工程:FolderINI
2. 添加一个列表框控件用来显示提取的目录:m_list,添加四个变量:
CStringPath;
charbuf[256];
CStringstrName;
CStringfolder;
3. 添加一个按钮“选择文件夹”,代码如下:
CStringReturnPath;
TCHARszPath[_MAX_PATH];
BROWSEINFObi;
bi.hwndOwner = NULL;
bi.pidlRoot = NULL;
bi.lpszTitle = _T("请选择一个文件夹");
bi.pszDisplayName = szPath;
bi.ulFlags = BIF_RETURNONLYFSDIRS;
bi.lpfn = NULL;
bi.lParam = NULL;
LPITEMIDLISTpItemIDList = SHBrowseForFolder(&bi);
if(pItemIDList)
{
folder = szPath;
if(SHGetPathFromIDList(pItemIDList,szPath))
ReturnPath = szPath;
}
else
ReturnPath = "";
Path = ReturnPath;
4. 添加一个按钮“提取目录”,代码如下:
m_list.ResetContent();
CFileFindfile;
if(Path.Right(1)!= "//")
Path += "//*.*";
else
Path += "*.*";
BOOLbf;
bf = file.FindFile(Path);
inti = 1;
while(bf)
{
bf = file.FindNextFile();
if(!file.IsDots())
{
CStringstr;
str.Format("%d",i);
strName = file.GetFileName();
m_list.AddString(strName);
::WritePrivateProfileString(_T(folder),_T(str),_T(strName),_T(buf));
i++;
}
}
编译运行,即可看到,可以把选择的文件夹目录提取到INI文件。