С++ wstring в файл вместо строки

У меня есть простой класс регистратора, который я пытался превратить в прием и вывод wstrings вместо строк.

заголовок:

#include <fstream>
using namespace std;

class CLog 
{
  public:
    CLog(wstring filename);
    ~CLog();
    void WriteString(string uString);
  private:
    fstream m_stream;
};

цена за тысячу показов:

#include "stdafx.h";
#include "log.h";

CLog::CLog(wstring uPath) 
{
  m_stream.open(uPath);
}
void CLog::WriteString(string uString)
{
  m_stream << uString.c_str() << endl;
}
CLog::~CLog()
{
  m_stream.close();
}

Может ли кто-нибудь предложить, что я должен использовать вместо fstream? Я пытался использовать wstringstream, но у него даже не было .open для вывода в файл, поэтому я подумал, что это неправильный подход.

Я хотел бы сохранить поведение, которое он сразу записывает в файл.


person tmighty    schedule 05.04.2013    source источник
comment
посмотрите здесь stackoverflow.com/questions/1509277/   -  person kassak    schedule 05.04.2013
comment
Ссылка, которую вы разместили, информативна, но не помогает.   -  person tmighty    schedule 05.04.2013
comment
была вещь, которую вы могли бы использовать - std::wofstream   -  person kassak    schedule 05.04.2013
comment
Неправильно, это старая версия моего кода, которую я опубликовал. Я думал, что ясно понял, чего хочу, заявив, что он должен принимать wstring, возможно, я должен был быть еще более ясным в этом.   -  person tmighty    schedule 05.04.2013


Ответы (1)


Теперь я использую «wofstream» вместо «fstream», и он отлично работает.

person tmighty    schedule 05.04.2013