#include
using namespace std;
save(wstring sData )
{
string result;
//获取缓冲区大小,并申请空间,缓冲区大小事按字节计算的
int len = WideCharToMultiByte(CP_ACP, 0, sData.c_str(), sData.size(), NULL, 0, NULL, NULL);
char* buffer = new char[len + 1];
//宽字节编码转换成多字节编码
WideCharToMultiByte(CP_ACP, 0, sData.c_str(), sData.size(), buffer, len, NULL, NULL);
buffer[len] = ‘\0’;
result.append(buffer);
//文件以字符串内的日期命名
char *endptr;
int year = strtol(result.substr(16, 4).c_str(), &endptr, 16);
int month = strtol(result.substr(20, 2).c_str(), &endptr, 16);
int day = strtol(result.substr(22, 2).c_str(), &endptr, 16);
int hour = strtol(result.substr(24, 2).c_str(), &endptr, 16);
int minute = strtol(result.substr(26, 2).c_str(), &endptr, 16);
char fileName[64];
sprintf(fileName, "%4d%2d%2d%2d%2d.dat", year, month, day, hour, minute);
std::ofstream file(fileName, ios::app);
file << result;
file << std::endl;
delete[] buffer;
file.close();
}