C++ 将c+中的整数更改为wstring+;
我有以下代码,我正在尝试将一个整数更改为wstring,然后我可以将其传递到一个文本文件。但问题是,当它到达伊图时(vec,img_邮票,10);行,将数字更改为负数。 有人知道问题出在哪里吗C++ 将c+中的整数更改为wstring+;,c++,integer,wstring,C++,Integer,Wstring,我有以下代码,我正在尝试将一个整数更改为wstring,然后我可以将其传递到一个文本文件。但问题是,当它到达伊图时(vec,img_邮票,10);行,将数字更改为负数。 有人知道问题出在哪里吗 wchar_t img_stamp[64]; while(c<_timeStamp.size()){ vec=_timeStamp.at(c); _itow_s(vec, img_stamp, 10); _data +=std
wchar_t img_stamp[64];
while(c<_timeStamp.size()){
vec=_timeStamp.at(c);
_itow_s(vec, img_stamp, 10);
_data +=std::wstring(img_stamp);
_data +=std::wstring(L"\r\n");
c++;
}
HANDLE hFile;
DWORD wmWritten;
hFile = CreateFile( "D:\\test\\testing.txt" ,GENERIC_READ|GENERIC_WRITE,FILE_SHARE_READ,NULL,OPEN_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile!=NULL){
DWORD len=sizeof(_data);
WriteFile(hFile, _data.c_str(), _data.size() * 2, &wmWritten, NULL);
}
CloseHandle(hFile);
wchar_t img_stamp[64];
而(c为什么不使用wstringstream
wstringstream ws;
for (...) { // some loop
ws << myint << ", ";
}
//now, you can use ws.str() to extract a wstring from the stream
wstringstreamws;
对于(…){//some循环
ws为什么不使用wstringstream
wstringstream ws;
for (...) { // some loop
ws << myint << ", ";
}
//now, you can use ws.str() to extract a wstring from the stream
wstringstreamws;
对于(…){//some循环
wsC++11添加了一个名为“()”的函数,该函数将数字、浮点或long long转换为std::string。还有一组与wstring()相关的函数。C++11添加了一个名为“()”的函数,该函数将数字、浮点或long long long转换为std::string。还有一组与wstring相关的函数:().谢谢您的回复,但问题是如果我不使用wstring,我可以通过writefile将数据添加到txt文件中,但它确实会为您提供一个wstring
!ws.str()
为您提供流中包含的wstring
。(我编辑了代码以澄清这一点。)这将解决问题。+1当然,当您已经有一个wstringstream
时,使用+=
进行字符串连接有点愚蠢。使用流收集所有内容,然后在最后转换为字符串一次。感谢您的回复,但问题是如果我不使用wstring,我可以通过guh WriteFileBut确实为您提供了一个wstring
!ws.str()
为您提供了流中包含的wstring
。(我编辑了代码以明确这一点。)这将解决问题。+1当然,当您已经有一个wstringstream
时,使用+=
进行字符串连接有点愚蠢。使用流收集所有内容,然后在最后转换为字符串一次。