Вывод 'wchar t*' в 'ofstream'

Я хочу вывести текст в файл через два указателя, что я объявил:

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

вот что я пробовал:

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

и вот что я получаю:

тестирование 113 113

Почему это, когда я печатаю Col1 и Col2, Я получаю числа вместо строк?

2 ответов


во-первых, использовать std::wofstream вместо std::ofstream.

кроме того, используйте L префикс в текстовой строке, чтобы указать, что ваш текст символ текст:

wchar_t   *Col1=L"dsffsd"

Так как вы написали его, используя широкие символы (wchar_t), вам нужно посмотреть на результирующий файл с чем-то, что понимает широкие символы.