tututuzxcv
2017-09-12 14:02使用文件夹的路径,程序问题出在哪
//DISPLAY 6.2 File I/O with Checks on open
//Reads three numbers from the file infile.dat, sums the numbers,
//and writes the sum to the file outfile.dat.
#include
#include
#include
#include
#include
#include
#include
#define NO_WIN32_LEAN_AND_MEAN
#include
using namespace std;
CString GetSavePath();
int main()
{
GetSavePath();
CString x;
x = GetSavePath();
cout << x << endl;
ifstream in_stream;
ofstream out_stream;
in_stream.open("x//.txt");
if (in_stream.fail())
{
cout << "Input file opening failed.\n";
exit(1);
}
out_stream.open("x//.txt", ios::app);
if (out_stream.fail())
{
cout << "Output file opening failed.\n";
exit(1);
}
int first, second, third;
in_stream >> first >> second >> third;
out_stream << "The sum of the first 3\n"
<< "numbers in infile.dat\n"
<< "is " << (first + second + third)
<< endl;
in_stream.close();
out_stream.close();
return 0;
}
CString GetSavePath()
{
CString strpath;
TCHAR Buffer[MAX_PATH];
BROWSEINFO bi;
ZeroMemory(&bi, sizeof(BROWSEINFO));
bi.hwndOwner = NULL;
bi.ulFlags = BIF_RETURNONLYFSDIRS; //要求返回文件系统的目
bi.ulFlags = BIF_NEWDIALOGSTYLE; //窗口可以调整大小,有新建文件夹按钮
bi.pszDisplayName = Buffer; //此参数如为NULL则不能显示对话框
bi.lpszTitle = _T("请选择文件夹");
bi.lpfn = NULL;
LPITEMIDLIST pIDList = SHBrowseForFolder(&bi);//调用显示选择对话框
if (pIDList)
{
SHGetPathFromIDList(pIDList, Buffer);
//取得文件夹路径到Buffer里
strpath.Format(_T("%s"), Buffer);
}
else
{
strpath = _T(""); // 用户点了取消
}
LPMALLOC lpMalloc;
if (FAILED(SHGetMalloc(&lpMalloc)))
strpath = _T("");
//释放内存
lpMalloc->Free(pIDList);
lpMalloc->Release();
return strpath;
}
- 点赞
- 回答
- 收藏
- 复制链接分享
0条回答
为你推荐
- MFC:我想在直接获取程序所在目录中的mp4文件,并添加路径到Listbox
- c++
- 1个回答
- 请问txt文件应该放在哪个文件夹
- c语言
- c++
- 1个回答
- 一个小小的数组显示问题
- javascript
- 微信小程序
- 2个回答
- log4j的日志文件如何在程序启动时自动生成
- log4j
- 2个回答
- c++如何批量读取多个文件夹下的文件并且把它赋值到数组中去?
- 图片
- c++
- 4个回答
换一换