str.format输出乱码
如该示例,str.Format(L"相似度:%f\t视频名称:%s\t起始位置:%d\r\n",tmp[0].dblSimilarity,tmp[0].szFileName,tmp[0].nFrame);
szFileName是一个char[260]字符数组如下图
结果str字符串格式化后变成这样
不要这个L转成宽字符的话, 又会报错
应该就是szFileName再转L的时候出的错,于是想到把这一段字符串和str拼接起来
1 CString str; 2 str.Format(L"相似度:%f\t起始位置:%d\r\n",tmp[0].dblSimilarity,tmp[0].nFrame); 3 str+=tmp[0].szFileName;
于是不但能通过编译,断点查看后,str为
- str "相似度:0.318576 起始位置:149
c:\Users\Kira\Desktop\VideoProcess2017年11月20\VideoProcess\VideoProcess\TempVideo\10.mp4" ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > >
成功!
图片显示好像被压缩了。囧