Как переносимо записать std :: wstring в файл?

У меня есть wstring , объявленная как таковая:

// random wstring
std::wstring str = L"abcàdëefŸg€hhhhhhhµa";

Литерал будет закодирован в UTF-8, потому что мой исходный файл.

[EDIT: According to Mark Ransom this is not necessarily the case, the compiler will decide what encoding to use - let us instead assume that I read this string from a file encoded in e.g. UTF-8]

I would very much like to get this into a file reading (when text editor is set to the correct encoding)

abcàdëefŸg€hhhhhhhµa

but ofstream is not very cooperative (refuses to take wstring parameters), and wofstream supposedly needs to know locale and encoding settings. I just want to output this set of bytes. How does one normally do this?

EDIT: It must be cross platform, and should not rely on the encoding being UTF-8. I just happen to have a set of bytes stored in a wstring, and want to output them. It could very well be UTF-16, or plain ASCII.

18
задан ST3 25 August 2013 в 14:44
поделиться