CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  控件

Internet Transfer源代码UTF-8乱码问题

楼主boythl(沙漠孤狐【工作,生活,编程】)2006-03-17 20:15:05 在 VB / 控件 提问

用Inet控件的OpenURL得到了一个网页的源文件。源文件是UTF-8格式的,但显示到文本框中如下:  
   
  TML><HEAD><TITLE>鍖椾含鏃呮父淇℃伅缃?-鍖椾含鎻借儨</TITLE>  
  <META   http-equiv=Content-Type   content="text/html;   charset=UTF-8"><LINK    
  href="http://www.visitbeijing.com.cn/css/css.css"   type=text/css   rel  
   
  本来应该是  
  TML><HEAD><TITLE>北京旅游信息网--北京揽胜</TITLE>  
  <META   http-equiv=Content-Type   content="text/html;   charset=UTF-8"><LINK    
  href="http://www.visitbeijing.com.cn/css/css.css"   type=text/css   rel=  
   
  我怎么才能得到正确的中文文本呢?我在网上查了一下午也没解决,请高手指教!谢谢! 问题点数:100、回复次数:5Top

1 楼faysky2(出来混,迟早是要还嘀)回复于 2006-03-17 20:31:18 得分 80

给你一段读去UTF-8文件的代码:  
   
  Private   Sub   Command1_Click()  
          Dim   strRlt   As   String  
          Dim   objStream   As   Object  
          Set   objStream   =   CreateObject("ADODB.Stream")  
   
          With   objStream  
                          .Type   =   2  
                          .Mode   =   3  
                          .Open  
                          .LoadFromFile   "c:\test.txt"       'test.txt是UTF-8格式的文本文件  
                          .Position   =   0  
                          .Charset   =   "UTF-8"    
                          strRlt   =   Mid(.ReadText,   2)  
                          .Close  
          End   With  
          Set   objStream   =   Nothing  
          Debug.Print   strRlt  
  End   SubTop

2 楼boythl(沙漠孤狐【工作,生活,编程】)回复于 2006-03-17 20:46:40 得分 0

大哥,我想直接转换下格式,不燃我得先用API把网页下到本地保存成文件,再用STRAM打开,耗时会大大增加啊。  
  能提供个直接可以识别这些乱码的算法吗?Top

3 楼boythl(沙漠孤狐【工作,生活,编程】)回复于 2006-03-17 20:57:35 得分 0

经过测试,楼上大哥给的函数可以实现。谢谢!  
   
  因为我要打开很多次不同页面,若每次都用URLDownloadToFile下载到本地文件,再创建对象转换,感觉效率会大大降低,大虾能帮忙提供个直接转换的方法吗?谢谢你啦!!!Top

4 楼rainstormmaster(暴风雨 v2.0)回复于 2006-03-20 09:16:35 得分 20

//若每次都用URLDownloadToFile下载到本地文件,再创建对象转换,感觉效率会大大降低,大虾能帮忙提供个直接转换的方法吗?谢谢你啦!!!  
   
  直接转换可以利用utf8的编码规则自己写  
   
  也可以利用WideCharToMultiByte和MultiByteToWideChar这两个api函数转换,具体的你搜索一下以前的帖子吧Top

5 楼boythl(沙漠孤狐【工作,生活,编程】)回复于 2006-03-24 16:59:34 得分 0

恩。这两个函数我都查过。也试过。后面几个参数始终用不好。没什么变化。  
  楼上大虾说的编码规则转换的UTF-8编码格式好象是形如%F%4这样的文本,但我这看到的是   鍖椾含鏃呮父淇℃伅缃?-鍖椾含鎻借儨   这样的乱码,能用这种转换规则转换吗?Top

相关问题

  • asp源代码象是乱码
  • 达人救命! jbuilderX源代码中文乱码
  • xml抓取页面源代码,得到的结果是乱码。。。
  • vb的源代码 中文注释 怎么拷进Word里都是乱码啊
  • 我在一些地方下载的asp源代码都是乱码
  • 源代码!源代码!
  • rose 中的中文注释生成源代码后会显示乱码!怎么解决???谢谢
  • 关于日文系统显示中文.asp文件的源代码是出现乱码!!!!!!!!
  • 求助:我想把VB的源代码复制出来,中文部分全都变乱码了!!
  • 我想把VB的源代码复制出来,中文部分全都变乱码了!!

关键词

  • 鍖椾含

得分解答快速导航

  • 帖主:boythl
  • faysky2
  • rainstormmaster

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo