请教获取网页上的内容时,为什么中文会出现乱码。小弟我是在对话框中显示的,有些网页能显示如百度,有些却不能,如人人网?

请问获取网页上的内容时,为什么中文会出现乱码。我是在对话框中显示的,有些网页能显示如百度,有些却不能,如人人网??
这是我的源代码,请大家帮我解答解答~
  GetDlgItem(IDC_EDTIMER)->GetWindowText(strtime);
CString straddress;
GetDlgItem(IDC_EDADDRESS)->GetWindowText(straddress);
CInternetSession mySession(NULL,0);
CHttpFile* myHttpFile=NULL;
CString strsource,strline;
myHttpFile=(CHttpFile*)mySession.OpenURL(straddress);
while(myHttpFile->ReadString(strline))
{
strsource+=strline;
strsource+="\r\n";
}
myHttpFile->Close();
mySession.Close() ;
GetDlgItem(IDC_EDWEBSOURCE)->SetWindowText(strsource);
delete myHttpFile;

------解决方案--------------------
编码问题,在进行下转换
void CGetWebSourceDlg::ConvertUtf8ToGBK(CString& strUtf8)
{
int len=MultiByteToWideChar(CP_UTF8, 0, (LPCTSTR)strUtf8, -1, NULL,0);
unsigned short * wszGBK = new unsigned short[len+1];
memset(wszGBK, 0, len * 2 + 2);
MultiByteToWideChar(CP_UTF8, 0, (LPCTSTR)strUtf8, -1, (LPWSTR)wszGBK, len);

len = WideCharToMultiByte(CP_ACP, 0, (LPCWSTR)wszGBK, -1, NULL, 0, NULL, NULL); 
char *szGBK=new char[len + 1];
memset(szGBK, 0, len + 1);
WideCharToMultiByte (CP_ACP, 0, (LPCWSTR)wszGBK, -1, szGBK, len, NULL,NULL);

strUtf8 = szGBK;
delete[] szGBK;
delete[] wszGBK;
}
------解决方案--------------------
两个马甲到分吧,怎么名字都一样
------解决方案--------------------
看网页的编码格式是什么,GB2312还是UTF-8,中文网站这两种比较常见
------解决方案--------------------
编码风格也一样,好像就是一个程序里的两段