您的位置:首页 > 理论基础 > 计算机网络

【Url编码问题】命名空间“System.Web”中不存在类型或命名空间名称“HttpUtility”。是否缺少程序集引用?

2014-02-07 15:23 579 查看
vs2010下解决方案:

1、右击项目选择“属性”,目标框架选择“.net FrameWord 4”;

2、右击项目中的引用,添加引用,在.net下选择System.Web,确定OK。

解释:

framework 4 client profile 为 framework 4的简化版,去掉了好多功能。web.dll就是其中,所以,引用原版即可,即为.net FrameWord 4

一般来说,国外的网站都是按照UTF-8编码,而“百度”是按照“GB2312”进行编码的。比如搜索“中国”,URL是“http://www.baidu.com/s?wd=%D6%D0%B9%FA&cl=3”

我们对比一下:C#中国的编码

编码 结果 网站 

UTF-8 C%23%E4%B8%AD%E5%9B%BD Google 

GB2312 C%23%D6%D0%B9%FA BaiDu

总结: 

UTF-8中,一个汉字对应三个字节,GB2312中一个汉字占用两个字节。 

不论何种编码,字母数字都不编码,特殊符号编码后占用一个字节。

//按照UTF-8进行编码 

string tempSearchString1 = System.Web.HttpUtility.UrlEncode("C#中国"); 

//按照GB2312进行编码 

string tempSearchString2 = System.Web.HttpUtility.UrlEncode("C#中国",System.Text.Encoding.GetEncoding("GB2312"));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐