Server.UrlEncode与HttpUtility.UrlEncode的区别

本文详细介绍了HttpUtility.UrlEncode和Server.UrlEncode两种URL编码方法的功能及使用方式,并对比了它们之间的区别。包括如何对URL字符串进行编码以及如何指定编码方式。

一、HttpUtility.UrlEncode 方法 

1、public static string UrlEncode(byte[])

将字节数组转换为已编码的 URL 字符串。

 

2、public static string UrlEncode(string)

对 URL 字符串进行编码。
 

3、public static string UrlEncode(string, Encoding)

使用指定的编码对象对 URL 字符串进行编码。
 

4、public static string UrlEncode(byte[], int, int)

从数组中的指定位置开始一直到指定的字节数为止,将字节数组转换为 URL 编码的字符串。
 

如果在js 传参调用时对应的js编码与解码为

escape     unescape

 

二、Server.UrlEncode方法 

1、public string UrlEncode(string)

对字符串进行 URL 编码,并返回已编码的字符串。
 

2、public void UrlEncode(string, TextWriter)

URL 对字符串进行编码,并将结果输出发送到 TextWriter 输出流。 

 

如果在js 传参调用时对应的js编码与解码为

endcodeURLComponent     decodeURLComponent()

 

三、Server.UrlEncode与HttpUtility.UrlEncode的区别

 

1、HttpUtility.UrlEncode,HttpUtility.UrlDecode是静态方法,而Server.UrlEncode,Server.UrlDecode是实例方法。


2、Server是HttpServerUtility类的实例,是System.Web.UI.Page的属性。

3、Server.UrlEncode的编码方式是按照本地程序设置的编码方式进行编码的,而HttpUtility.UrlEncode是默认的按照utf-8格式进行编码的,如果需要指定HttpUtility.UrlEncode的编码方式,则需要:HttpUtility.UrlEncode("学习也休闲", Encoding.GetEncoding("gb2312"));

4、两者都会如下转换字符:空格会被转换为加号、非字母数字字符会被转换为他们的十六进制表现形式。

转载于:https://www.cnblogs.com/coderblog/p/9067700.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值