I'm used to serializing data to disk using narrow character streams. However, now I need to serialize data using a wide character stream.When using narrow character streams, the lines in bold can be written as:Code:#include <iostream> #include <string> using std::cout; using std::endl; enum { ver1 = 0xE0000001, ver2 = 0xE0000003, ver3 = 0xE0000004, ver4 = 0xE0000001, ver5 = 0xE0000003, ver6 = 0xE0000001 }; int main() { std::wofstream outfile("awesome.txt"); long ulVersion[6]; ulVersion[0] = ver1; ulVersion[1] = ver2; ulVersion[2] = ver3; ulVersion[3] = ver4; ulVersion[4] = ver5; ulVersion[5] = ver6; for(int i = 0; i < 6; i++) cout << ulVersion[i] << endl; outfile.write((wchar_t*)ulVersion,sizeof(long)*6); if(!outfile) cout << "Problem?" << endl; outfile.close(); cout << endl; std::wifstream infile("awesome.txt"); infile.read((wchar_t*)ulVersion,sizeof(long)*6); for(int i = 0; i < 6; i++) cout << ulVersion[i] << endl; if(!infile) cout << "Problem?" << endl; infile.close(); }I'm not sure what changes I need to make in wide character world; I haven't found any good references. Obviously, the streams are in a bad state after the read/write operation. I'm not sure why, though.Code:outfile.write((char*)ulVersion,sizeof(long)*6); infile.read((char*)ulVersion,sizeof(long)*6);