+ -
当前位置:首页 → 问答吧 → CHttpFile乱码问题

CHttpFile乱码问题

时间:2011-12-18

来源:互联网

xp vs2010 unicode环境
复制内容到剪贴板
代码:
#include "iostream"
#define _AFXDLL
#define UNICODE
#define _UNICODE
#include "string"
#include "afx.h"
#include "afxinet.h"
using namespace std;

string Unicode2Ansi(wchar_t* wstr) {
    int len = WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,wstr,-1,NULL,0,NULL,NULL);
    char* tmps = new char[len];
    WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,wstr,-1,tmps,len,NULL,NULL);
    string ss = tmps;
    delete [] tmps;
    return ss;
}

int main() {
    CInternetSession sess(_TEXT(""));
    CHttpFile* file = (CHttpFile*)sess.OpenURL(_TEXT("http://www.baidu.com"));
    CString str;
    while (file->ReadString(str)) {
   
        cout << Unicode2Ansi(str.GetBuffer()) << endl;
    }
    file->Close();
    cin.get();
    return 0;
}
我那么 转换编码不对吗? 应该怎么转换呢?我知道可以用ReadString的另一个重载达到 目的 ,但是我想知道怎么利用" {) W: b: \& J, S( y; D) S+ t8 I
WideCharToMutliByte函数来实现 。。

作者: ninty   发布时间: 2011-12-18

啊,确实不知道,希望坛子里有其他午饭来帮帮你

作者: Bill_Hoo   发布时间: 2011-12-18