这个类在使用时必须调用imbue函数进行环境设置,但是由于其自动将内部字节序转为环境的编码(中国为GBK),所以用这个往文件输入unicode字符目前没什么办法。
今天做了一个测试,我写的的字节序是0x76EE,0x5F55,0x0000,写进然后用ultraedit看发现字节序是0xBFC4,0xBCC2,用转码工具(unicode转gbk)将0x76EE,0x5F55进行转换,发现刚好是0xBFC4,0xBCC2,所以wofstream内部将unicode进行存的时候会先进行一次转码。
所以要想存取unicode字符不如用fstream类,在前面写入0xFEFF就可以了。写下这个以防自己以后忘记。