Google
 
欢迎阅读热点专题
专题简介

缘起:在 Google 和百度里搜索“千一网络”。在浏览器地址栏中,可以发现:Google 将“千一网络”编码为“%E5%8D%83%E4%B8%80%E7%BD%91%E7%BB%9C”;百度将“千一网络”编码为“%C7%A7%D2%BB%CD%F8%C2%E7”。

查看二者网页的源文件,可以发现:Google 采用的是 UTF-8 编码;百度采用的是 ANSI(gb2312 字符集)。这就是编码不同的原因。

ASP、ASP.NET、JavaScript 的 ANSI、UTF-8 大全。

 
核心阅读
如何在 ASP 中实现 UTF-8 的 URL 编码?

<%=Server.URLEncode("千一网络")%>,并将文件存储为 UTF-8 编码。若您遇到不是这种情况,请参见:Server.URLEncode 编码是怎么决定的?URLEncode、URLDecode-ASP UTF-8 版本

如何在 ASP 中实现 gb2312 的 URL 编码?

<%=Server.URLEncode("千一网络")%>,并将文件存储为 ANSI 编码。

如何在 ASP.NET 中实现 UTF-8 的 URL 编码?

Server.UrlEncode("千一网络") 或 HttpUtility.UrlEncode("千一网络"),这两段代码均是 UTF-8 输出的,不受文件存储编码的影响。HttpUtility 名称空间:System.Web,程序集:System.Web(在 system.web.dll 中)。

如何在 ASP.NET 中实现 gb2312 的 URL 编码?

HttpUtility.UrlEncode("千一网络", System.Text.Encoding.Default),System.Text.Encoding.Default 的作用是获取与系统区域设置中的默认 ANSI 代码页相关联的编码。

如何在 JavaScript 中实现 UTF-8 的 URL 编码?

encodeURI("千一网络") 或 encodeURIComponent("千一网络"),这二者都是内置函数,不过二者还是有一些区别的,请参见 JavaScript 中的 escape, encodeURI, encodeURIComponent 的区别encodeURIComponent 和 decodeURIComponent

如何在 JavaScript 中实现 gb2312 的 URL 编码?

没有现成的函数,需要自己写一个,还好网上有写好的代码(包含解码),请参见纯 JavaScript 版的 ANSI 的 URL 编码与解码

ASP 中有没有类似 URLDecode 的函数?

ASP.NET 中是有的,但 ASP 中好像没有?是的,没有,但网上有写好的代码,请参见 ASP Server.URLEncode 反函数 URLDecode