今天遇到个很奇怪的问题,将csv里的中文通过otl导入到oracle数据库中可以正常显示,但是再通过otl读取后显示到vs2010的界面上却显示乱码,经过查找资料知道是因为编码的子集可以向超集正常转化(大概就是我导入时的过程),超集的中文向子集的编码转化就会乱码(大概就是我导出时的过程)。然后我修改了oracle的数据库编码后还是不能正常显示。
最后我直接是不按逐字符的方式将char型向wchar_t转换了,来了个(CString)变量的强制类型转换,结果汉字就正常显示了,突然发现编码的问题可以采用这两种不同的转码方式可以解决:
1.强制转换
2.逐字符转换
两种之中肯定有一种可以完成转码。