while(!RecSet3.IsEOF()) // 有没有到表结尾
{
RecSet3.GetFieldValue(_T("cresub"),var);
}
执行到这里的时候 ,数据库里面的内容为 “吊钟物”,可是var的值是一个 看不懂的字符, var转成CString后 变成了“???”。不知道是什么情况。 不知哪个大虾有过类似的情况,能否解决。 我用的是vc++2008

解决方案 »

  1.   


    RecSet3->MoveFirst();
    while(!RecSet3.IsEOF()) // 有没有到表结尾
    {
        RecSet3.GetFieldValue(_T("cresub"),var);
    }你的数据库是哪种?
      

  2.   

    我的数据库是Access ,而且我发现一个问题, 基于对话框的界面按此方法打开时没有问题,能读汉字。 可是基于单文档的界面 执行相同的代码, 读汉字就是乱码了。 悲剧哇
      

  3.   

    不会DAO,DAO没有ADO简单好用,推荐改成ADO吧。
      

  4.   

    问题解决了,是unicode的问题。