tututuzxcv 2017-09-12 14:02 采纳率: 50%
浏览 376

使用文件夹的路径,程序问题出在哪

//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条回答

    报告相同问题?

    悬赏问题

    • ¥15 求差集那个函数有问题,有无佬可以解决
    • ¥15 【提问】基于Invest的水源涵养
    • ¥20 微信网友居然可以通过vx号找到我绑的手机号
    • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
    • ¥15 解riccati方程组
    • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
    • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
    • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
    • ¥50 树莓派安卓APK系统签名
    • ¥65 汇编语言除法溢出问题