mfc网络编程问题(关于url地址)?

lijianwuchen 2011-08-02 10:52:05
 CInternetSession   mySession(NULL,0); 
CHttpFile* myHttpFile=NULL;
myHttpFile=(CHttpFile*)mySession.OpenURL(str_url);
关于以上代码,str_url是网址,如果没有汉字,操作成功eg:http://book.douban.com/subject_search?search_text=linux;
如果str_url里有汉字,即使我把汉字转换为16进制机内码还是打不开指定的网页,eg:
http://book.douban.com/subject_search?search_text=爱
http://book.douban.com/subject_search?search_text=%B0%AE
请问这该如何是好?求救。
另外我用的是vs2010
...全文
90 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijianwuchen 2011-08-03
  • 打赏
  • 举报
回复
感谢你的代码,太强了!!
Eleven 2011-08-02
  • 打赏
  • 举报
回复
[Quote=引用楼主 lijianwuchen 的回复:]
CInternetSession mySession(NULL,0);
CHttpFile* myHttpFile=NULL;
myHttpFile=(CHttpFile*)mySession.OpenURL(str_url);
关于以上代码,str_url是网址,如果没有汉字,操作成功eg:http://book.douban.com/subject_search?search_……
[/Quote]
char a[] = "爱";
CString tmp;
CString str;
for(int i=0; i<strlen(a); i++)
{
BYTE ch = a[i];
tmp.Format(_T("%%%X"), ch);
str += tmp;
}
AfxMessageBox(str);
Eleven 2011-08-02
  • 打赏
  • 举报
回复
URLEncoding啊
lijianwuchen 2011-08-02
  • 打赏
  • 举报
回复
看来就是应该用utf8编码,具体要怎么转换呢?mfc有将汉字转换成utf8编码的函数吗?多谢了
xiaoguailong3 2011-08-02
  • 打赏
  • 举报
回复
UTF8
stjay 2011-08-02
  • 打赏
  • 举报
回复
转成UTF8编码试试
http://book.douban.com/subject_search?search_text=%E7%88%B1

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧