bcb6 如何 将 string 转为 unicode ?

icydream 2012-09-16 11:26:21
各位高手,最近碰到一个问题:

用了一个activx控件,ocx文件。先上代码

Form2->mdb1->Export(L"data.mdb",L"daydayup",WideString(Form2->ComboBox1->Text),L"D:\\V\\OutPut");

mdb1是一个控件,传递变量,需要用unicode格式的。是一个文件名称,包含路径的。

这样传递编译能通过,但是运行时提示错误,问了一下,据说是c++ builder6.0的String 类型用wideString转换有问题,
各位大哥大姐,麻烦帮忙提示一下,bcb6 如何 将 string 转为 unicode ? 目标是将string 类型的变量转成unicode类型的变量
...全文
627 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
__lhy 2012-09-17
  • 打赏
  • 举报
回复
WideString(Form2->ComboBox1->Text.c_bstr()
我不懂电脑 2012-09-17
  • 打赏
  • 举报
回复
简单用WideString
缘中人 2012-09-17
  • 打赏
  • 举报
回复
String stringdd;
wchar_t wcTemp[1024]={0};
stringdd = AnsiToUtf8( Form2->ComboBox1->Text);
Utf8ToUnicode(wcTemp,stringdd.c_str(),stringdd.Length());


wcTemp 也是unicode编码,传过去试试
缘中人 2012-09-17
  • 打赏
  • 举报
回复
WideString(Form2->ComboBox1->Text)转换后肯定是Unicode编码了。

WideString ws;
ws = WideString(Form2->ComboBox1->Text);

Form2->mdb1->Export(L"data.mdb",L"daydayup",ws.c_bstr(),L"D:\\V\\OutPut");

dataxdata 2012-09-17
  • 打赏
  • 举报
回复
可以用MultiByteToWideChar函数
int MultiByteToWideChar(
__in UINT CodePage,
__in DWORD dwFlags,
__in LPCSTR lpMultiByteStr,
__in int cbMultiByte,
__out LPWSTR lpWideCharStr,
__in int cchWideChar
);
mmfeng 2012-09-16
  • 打赏
  • 举报
回复
BCB6的string 与AnsiString是等价的,看这儿:
http://topic.csdn.net/t/20050414/21/3937533.html

703

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder ActiveX/COM/DCOM
社区管理员
  • ActiveX/COM/DCOM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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