endl doesn't work with wstring (unicode)
问题 Here is the code: std::ofstream f("file1.txt"); f<<"123"<<std::endl<<"456"; //(*1) /*std::stringstream ordinary_strstream; This works too ordinary_strstream<<"123"<<'\n'<<"456"; f<<ordinary_strstream.str();*/ std::wstringstream s; s<<L"123"<<std::endl<<L"456"; //(*2) s<<L"123"<<L"\n"<<L"456"; //(*3) s<<"123"<<WCHAR(13)<<WCHAR(10)<<"456";//(*4) HANDLE h =CreateFileW(L"file2.txt", GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); ULONG l;