将'wchar_t *'输出到'ofstream'

时间:2012-10-15 04:42:33

标签: c++ file std wchar-t wofstream

我想通过我声明的两个指针将文本输出到文件中:

wchar_t   *Col1="dsffsd", *Col2="sdfsf";

以下是我的尝试:

std::ofstream fout;
fout.open(NativeDatabasePathHist);
fout<<"testing";
fout<<" "<<Col1<<" "<<Col2;
fout.close();

这就是我得到的:

  

测试113 113

为什么当我打印Col1Col2时,我会收到数字而不是字符串?

2 个答案:

答案 0 :(得分:20)

首先,使用std::wofstream代替std::ofstream

另外,在文字字符串上使用L前缀表示您的文字是宽字符文字:

wchar_t   *Col1=L"dsffsd"

答案 1 :(得分:0)

由于您使用宽字符(wchar_t)编写了它,因此需要使用能够理解宽字符的内容来查看生成的文件。

相关问题