STDMETHODIMP CDataOpt::GetRS(BSTR *buf)
{
*buf = ::SysAllocString(L"中国");
return S_OK;
}
WebService采用UTF-8编码.
客户端接收后显示的是乱码,怎么解决呀?
5 个解决方案
#1
要设置编码。
#2
我用的是VC+gSoap开发客户端,设置了的:soap->SetMode(中文);
起作用的,但 是另一种乱码.
急呀.
起作用的,但 是另一种乱码.
急呀.
#3
WCHAR *pwszTemp = L"中文";
INT nLen = WideCharToMultiByte(CP_UTF8, 0, pwszTemp, -1, NULL, 0, NULL, NULL);
CHAR *pszUTF8 = new CHAR[nLen+1];
WideCharToMultiByte(CP_UTF8, 0, pwszTemp, -1, pszUTF8 , nLen, NULL, NULL);
}
#4
gSoap貌似只支持Ansi和UTF-8格式吧。
#5
看客户端是否有问题,这里似乎没问题啊。
英文有乱码吗?
英文有乱码吗?
#1
要设置编码。
#2
我用的是VC+gSoap开发客户端,设置了的:soap->SetMode(中文);
起作用的,但 是另一种乱码.
急呀.
起作用的,但 是另一种乱码.
急呀.
#3
WCHAR *pwszTemp = L"中文";
INT nLen = WideCharToMultiByte(CP_UTF8, 0, pwszTemp, -1, NULL, 0, NULL, NULL);
CHAR *pszUTF8 = new CHAR[nLen+1];
WideCharToMultiByte(CP_UTF8, 0, pwszTemp, -1, pszUTF8 , nLen, NULL, NULL);
}
#4
gSoap貌似只支持Ansi和UTF-8格式吧。
#5
看客户端是否有问题,这里似乎没问题啊。
英文有乱码吗?
英文有乱码吗?