ADO导出EXCEL数据的时候,由于有多国语言,转换过程中总是出现乱码,怎么解决?

火鸟33 2007-10-30 05:56:06
pStream.CreateInstance("ADODB.Stream");
_variant_t varOptional(DISP_E_PARAMNOTFOUND,VT_ERROR);
pStream->raw_Open(varOptional,adModeUnknown,adOpenStreamUnspecified,NULL,NULL);

pStream->Type = adTypeText;

pStream->Charset = _T("ISO-8859-2");

pStream->WriteText((_bstr_t)pRst->GetFields()->GetItem((_variant_t)arrStrColName[i].GetBuffer(1))->GetValue(),adWriteChar);
pStream->Position = 0;
pStream->Charset = _T("ISO-8859-2");
arrStrContent[lRecordNum][i] = (wchar_t*)(_bstr_t)pStream->ReadText(adReadAll);
pStream->Close();
...全文
159 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
火鸟33 2007-10-31
  • 打赏
  • 举报
回复
应该有字符集,但是还是转化不了,还是出“?”。我是先从RecordSet中取出到Stream,然后再转化字符集,不过看样子是没转化成功,你们有现成代码参考么?谢谢
火鸟33 2007-10-31
  • 打赏
  • 举报
回复
UP
凤矶 2007-10-30
  • 打赏
  • 举报
回复
安装相应的字符集
凤矶 2007-10-30
  • 打赏
  • 举报
回复
如果ADO通过OLEDB连接到数据库,
在Connection的ConnectionString中加入字符串:AutoTranslate=False;
如果ADO通过ODBC连接,则在配置ODBC时,将“执行字符数据转换”去掉。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧