Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/163.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;fstream正在写入十六进制而不是字符串?_C++_Fstream - Fatal编程技术网

C++ C++;fstream正在写入十六进制而不是字符串?

C++ C++;fstream正在写入十六进制而不是字符串?,c++,fstream,C++,Fstream,我正在尝试使用URLDownloadToFile()下载一个文件,该文件到目前为止仍在运行,但是我在使用回调函数和将回调输出wszStatusText写入文件时遇到了问题 下面是给出问题的函数: HRESULT DownloadStatus::OnProgress(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR wszStatusText) { fstream myfile; myfile.op

我正在尝试使用
URLDownloadToFile()
下载一个文件,该文件到目前为止仍在运行,但是我在使用回调函数和将回调输出wszStatusText写入文件时遇到了问题

下面是给出问题的函数:

HRESULT DownloadStatus::OnProgress(ULONG ulProgress, ULONG ulProgressMax, ULONG ulStatusCode, LPCWSTR wszStatusText)
{
    fstream myfile;
    myfile.open("file.txt", ios::app);

    // this prints hex
    myfile << " StatusText: " << wszStatusText;
    myfile.close();

    // this prints the string properly
    MessageBox(NULL, wszStatusText, L"test", MB_OK);

    return S_OK;
}
HRESULT下载状态::OnProgress(ULONG ulProgress、ULONG ulProgressMax、ULONG ulStatusCode、LPCWSTR wszStatusText)
{
fstream-myfile;
打开(“file.txt”,ios::app);
//这是十六进制的

myfile您正在将一个宽字符的C字符串传递到一个窄字符流中。没有很好的自动转换,所以您只需要得到一个指针地址


改为使用
std::wfstream

使用
std::wfstream
。好的,我已更改为
wfstream myfile
,(其他所有内容都相同),现在我在运行(调试)时收到一个未处理的异常它…我在这里遗漏了什么吗?@user5062925:这是一个完全不同的问题。听起来你真的需要一位导师来帮助你解决这个问题。有没有实验室助理或可以与之交谈的人?不幸的是,没有,我完全靠我自己…我尝试过处理
wfstream
,它确实有效,但wszStatusText不起作用出于某种原因,为了澄清我的问题,我发布了完整的代码。