`

VC下CHttpFile.ReadString 中文读取乱码的编码方法

阅读更多
//UTF-8 to GB2312
CString WebProcess::Convert(CString str,int sourceCodepage, int targetCodepage){

	int len = str.GetLength();
	int unicodeLen = MultiByteToWideChar(sourceCodepage,0,str,-1,NULL,0);

	wchar_t *pUnicode;
	pUnicode = new wchar_t[unicodeLen+1];

	memset(pUnicode,0,(unicodeLen+1)*sizeof(wchar_t));
	MultiByteToWideChar(sourceCodepage,0,str,-1,(LPWSTR)pUnicode,unicodeLen);

	BYTE *pTargetData = NULL ;
	int targetLen = WideCharToMultiByte(targetCodepage,0,(LPWSTR)pUnicode,-1,(char*)pTargetData,0,NULL,NULL);

	pTargetData = new BYTE[targetLen+1];
	memset(pTargetData,0,targetLen+1);

	WideCharToMultiByte(targetCodepage,0,(LPWSTR)pUnicode,-1,(char*)pTargetData,targetLen,NULL,NULL);
	
	CString rt;
	rt.Format("%s",pTargetData);

	delete []pUnicode;
	delete []pTargetData;


	return rt ;

}

 

分享到:
评论

相关推荐

    GetHtml.rar_CHttpFile GetHtml_Gethtml_gethtml source vc_vc CHttp

    VC2005写的 CHttpFile类 读取网页原码的小程序

    功能强大的VC访问HTTP网页类

    功能强大的VC访问HTTP类。 实现了HTTP的GET、POST和图片下载方法。能自动提取和保存返回的cookies,在发送数据包时能自动添加保存好的cookies。能自动识别网站的编码,在接收数据后,自动将编码转换。在发送数据时,...

    CHttpFile介绍

    CHttpFile类的介绍以及各种方法的使用

    C++使用 CHttpFile类,实现HTTP协议下请求数据,实现HTTP协议下多文件上传!VS2013开发,可直接运行!

    1:base64加密传输数据,解决宽字符,中文传输数据问题 2:模拟表单实现多类型文件上传 3:vs2013开发,完整项目上传,下载即可完整运行

    VC 获取公网 ip 地址

    参考了部分网友的资源,改写了一个获取公网IP地址的方法。忘记了网友网址,如冒犯,请原谅!发布此代码的目的旨在交流。代码如下: //头文件 #include "afxinet.h" //获取公网IP地址 CString getLocalIpAddress() {...

    使用IPicture接口显示图片的一个MFC小程序,整理修改by唐太咸

    本MFC小程序实现了下面3个功能 1.从本地读取文件,并显示...2.通过CHttpFile,CInternetSession类打开一个URL获取图片,并保存在本地, (随便在网上找个URL替换就可以) 3.从本地读取一幅图片,然后按照指定尺寸另存一份

    基于MFC的图片压缩上传

    基于MFC的对路径内所有图片(包括子文件夹内图片)自主选择压缩比上传到所选择的目的文件夹,并进行备份,压缩上传信息上传到日志文件内;可以选择定时器进行定时压缩上传。用到的库包括cximage,结构体包括CFile、...

    MFC类库详解中文版(chm)

    CHttpFile afxinet.h CHttpFilter 创建并处理超文传输协议过滤器对象,该对象用于过滤用于HTTP请求的服务器通知 afxisapi.h CHttpFilterContext afxisapi.h CHttpServer Internet Server API(ISAPI)的包装类 ...

    ip地址的获取

    *****//*函数说明:获取当前外网IP地址/*参数:无/*返回值:返回外网IP地址、CString类型字符串/*By:Koma2009.08.2114:12//用3322获取外网IP最为方便,直接读取网页源码,不用查找,网页源码就是外网IP/************...

    VC++抓取远程文件(URL网页的源代码)

    内容索引:VC/C++源码,网络相关,远程 这是一个通过inet来获取网页内容的程序,远程获取文件内容,实际上是通过URL地址来得到指定地址下某文档的源代码,如截图示,一看便知,不过如果是一些文本类型的文件,也是能...

    三种获取网页源码的方法(使用MFC/Socket实现)

    第一个方法是使用MFC里面的 代码如下:CString GetHttpFileData(CString strUrl){ CInternetSession Session(“Internet Explorer”, 0); CHttpFile *pHttpFile = NULL; CString strData; CString strClip; ...

    post请求json数据,实现iopent协议

    使用windows http post请求json数据,实现iopenet通讯协议,IDE:VC6.0. 可编译通过。有测试数据,见html.txt。

    提取网页内的所有超链接例程

    提取网页超链接 有两个例程 一个是提取本地静态网页的所有超链接 第二个是通过ie的接口获得当前ie的网页内的所有超链接 用mfc编写

    C语言https客户端双向认证

    C语言实现https客户端,使用证书的双向认证,上传资料中,包含证书和代码,证书使用openssl生成的RSA证书,也可换成自己的证书和服务端一致就行了。

    获取本机当前外网IP地址和主机名

    简单明了地介绍获取当前外网IP地址的办法

    自动登录网页获取其HTML

    CInternetSession CHttpFile几个类获取具有多个输入信息的html

    HTTP 获取网页源代码

    1、通过访问URL,获取该URL对应的网页源代码 2、将获取到的网页源代码写入本地文件

    MFC实现下载网页

    本例子只能保存单个网页的功能!有需要的朋友顶!!!!

Global site tag (gtag.js) - Google Analytics