问题
最近给导师干活,需要将一段VC++代码格式化输出到txt文件当中,但是输出到txt文件当中会出现乱码,如下所示:
该段代码如下:
ss.Format(L"%5d %5d %5d %5d %5d%5d%5d%5d%5d\n", (int)n0, (int)nh, (int)m0, (int)npp, (int)npn, (int)NR0, (int)NR1, (int)Iprt, (int)Nprtc);
outfile << ss;
解决方案
解决方案一:将CString转换为char
在该代码段最前页添加引用:
#include <afxpriv.h>
然后将原代码段修改为:
ss.Format(L"%5d %5d %5d %5d %5d%5d%5d%5d%5d\n", (int)n0, (int)nh, (int)m0, (int)npp, (int)npn, (int)NR0, (int)NR1, (int)Iprt, (int)Nprtc);
//outfile << ss;
outfile << CT2A(ss.GetBuffer());
解决方案二:将字符集修改为->多字符集
对程序点击右键->属性,进入如下界面框,选择“ 使用多字节字符集 ”即可。