文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院网络编程XML/Soap用XMLHTTP Post/Get HTML页面时的中文乱码之完全Script解决方案
精品推荐
特别推荐
·跟我学XML和XSL
·XHTML教程,简单认识XHTML基础知识
·XML轻松学习手册
·XSL/XML网页制作入门,入门到精通
·用XML+JSP实现网页内容动态显示的方案
·将XML结点转换成JAVABEAN并存入数据库
·XML入门教程:XML 浏览器支持
·XHTML 1.0:标记新的开端
·什么是 XML Web Service
·什么是XML
·XML技巧五则
·新兴XML处理方法VTD-XML介绍
·一个简单的基于XML的模块集成框架
·XML数据库中几个容易混淆的概念
·用Flash和XML来构造一个聊天室
热点TOP10
·ASP.NET中应用XML技术实现Web报表打印
·XML轻松学习手册
·使用xmldom在服务器端生成静态html页面
·XHTML三种文件类型声明
·XSLT Designer快速入门指南
·运用CodeSmith代码生引擎生成XML报表文件
·利用XML实现通用WEB报表打印实际使用中的例子
·XHTML入门学习教程:框架标签使用
·XML Schema定义元素的基本知识
·XHTML标签写法应该注意的问题
·利用XMLHTTP无刷新添加数据
·如何使用XML实现多渠道接入网站的构架
·XHTML教程,简单认识XHTML基础知识
·常用的XHTML标签的使用技巧介绍
·网页设计学习XHTML应用小结
·XHTML 1.0 参考
·Xml 串行话对象与反串行实例
·XQuery 初学者入门教程:XQuery 术语和语法
·XQuery 初学者入门教程:XQuery FLWOR + HTML
·XQuery 初学者入门教程:XQuery FLWOR 表达式

用XMLHTTP Post/Get HTML页面时的中文乱码之完全Script解决方案

日期:2005年5月14日 作者:清风网络学院 查看:[大字体 中字体 小字体]


以前我曾经贴过一篇用XMLHTTP Post Form 的帖子,那里的代码中我Post E文的Value毫无问题,但是后来发现Post含有中文的表单时会出现乱码,原因当然是UTF-8 和GB2312 之间的转换问题了!TNND,打倒GB2312!大家都用UTF8多好。

用XMLHTTP Post Form时的表单乱码有两方面的原因——Post表单数据时中文乱码;服务器Response被XMLHTTP不正确编码引起的乱码。换句话说,本文主要解决两个问题——怎样正确Post中文内容&怎样正确显示得到的中文内容。

Part I Post中文内容

先看看E文的表单是怎么提交的:

<SCRIPT language="JavaScript">
strA = "submit1=Submit&text1=scsdfsd";
var oReq = new ActiveXObject("MSXML2.XMLHTTP");
oReq.open("POST","http://ServerName/VDir/TstResult.asp",false);
oReq.setRequestHeader("Content-Length",strA.length); 
oReq.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");
oReq.send(strA);
</ScRIPT>

如果把strA = "submit1=Submit&text1=scsdfsd";换成:
strA = "submit1=Submit&text1=中文";

你会发现提交上去的东东根本不对,ASP中Request.Form("Text1")根本取不到值。俺用Request.BinaryRead把一个HTML Form中的Post内容写出来看了看,才发现问题——Form提交时也要编码的,编码后的中文是类似于%??%??的转义字符,比如“中文”就被编码为:%D6%D0%CE%C4。呵呵,也怪俺笨,人家CONTENT-TYPE里明明写的清清楚楚——application/x-www-form-urlencoded,urlencoded嘛当然就是这个样子了。既然这样,那我们也知道该怎么办了——自己做转换,代码见下:

<SCRIPT language="VBScript">
Function URLEncoding(vstrIn)
    strReturn = ""
    For i = 1 To Len(vstrIn)
        ThisChr = Mid(vStrIn,i,1)
        If Abs(Asc(ThisChr)) < &HFF Then
            strReturn = strReturn & ThisChr
        Else
            innerCode = Asc(ThisChr)
            If innerCode < 0 Then
                innerCode = innerCode + &H10000
            End If
            Hight8 = (innerCode  And &HFF00)\ &HFF
            Low8 = innerCode And &HFF
            strReturn = strReturn & "%" & Hex(Hight8) &  "%" & Hex(Low8)
        End If
    Next
    URLEncoding = strReturn

[1] [2] [3] 下一页 




上一篇:Filter与updatebatch混合使用实现批量更新

下一篇:在线实时开通WEB及FTP源程序

用XMLHTTP Post/Get HTML页面时的中文乱码之完全Script解决方案 相关文章:
·笔记本电脑无线上网解决方案大比拼
·魔兽争霸3完全作弊码
·不用重装XP系统就可以解决全部故障
·小型办公场合组网方案
·XP系统运行慢?小编自用7招解决
·红色警报2 完全秘技
·Windows Vista Ultimate中文旗舰版下载+简单破解(支持迅雷HTTP & BT)
·Windows系统进程列表完全解析
·《鬼舞者3》中文功略(PS2) - 其他电视游戏攻略秘籍 - 其他电视游戏
·完全记录攻略--轻松刻录不求人
用XMLHTTP Post/Get HTML页面时的中文乱码之完全Script解决方案 相关软件:
·主题医院 2 完美中文硬盘版
·《家园2》 简体中文正式版
·三国群英传 2 中文版
·300多种中文字体
·完全精通局域网手册(PDF)
·梦幻蛋糕屋中文版
·仙剑奇侠传2中文版 完美破解补丁
·《猎杀潜航2中文版》(Silent Hunter II)中文版
·NDS《逆转裁判4 完美汉化简体中文版》模拟器
·三国志10威力加强PK版中文版 内存+存档+剧本修改器v1.10

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot