|
楼主 |
发表于 2009-8-10 14:59:22
|
显示全部楼层
本帖最后由 feitaoy 于 2009-8-10 15:00 编辑
问题解决了,具体如下:
1。ive文件本身的text内容是中文的没问题,问题是出在加载ive时显示乱码,所以需要修改ive插件使其支持中文
2。ive插件的text.cpp中,增加中文支持:
#include <string>
#include <comutil.h>
using namespace std;
#pragma comment(lib, "comsuppw.lib")
string ws2s(const wstring& ws);
wstring s2ws(const string& s);
string ws2s(const wstring& ws)
{
_bstr_t t = ws.c_str();
char* pchar = (char*)t;
string result = pchar;
return result;
}
wstring s2ws(const string& s)
{
_bstr_t t = s.c_str();
wchar_t* pwchar = (wchar_t*)t;
wstring result = pwchar;
return result;
}
在Text::read()中增加代码
std::wstring str;
str=s2ws(in->readString());
setlocale(LC_ALL,"chs");
setText(str.c_str());
|
|