`
isiqi
  • 浏览: 16063271 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

终于解决了 .NET 2.0 的URL解码问题

阅读更多

现在的接口需要HTTP的处理,有很多需要处理提交的URL,并且要接收URL。
之前一直使用英文,没有发现什么问题,这次测试了一下中文,问题就大了!!!!

用IE提交的中文参数,在VS.NET 2k5 里面怎么样测试都是乱码,也上网查了很多资料,还是搞不定。
我也知道VS.NET 2k5 的默认编码是Unicode,但是转换GB2312也很麻烦,不是好办法。

又看到如果去Request.URL的话就可以取到中文了,于是写了处理URL参数的功能。
但是还是有乱码。。。。郁闷很长时间

最后看到了Request的编码设置,查看了一下编码的设置,默认是Unicode,很对。
设置成GB2312,居然就变成了中文,哈哈,看来默认提交的URL是Unicode,但是显示还是需要GB2312才正常。

于是又去掉处理参数功能,惨,又是乱码!!!

看来还是需要取URL才行啊。。。

一下是部分代码:

//处理Request,解决乱码!!!
Request.ContentEncoding = System.Text.Encoding.Default;

string strUrl = Request.Url.ToString().Substring(Request.Url.ToString().IndexOf("?") + 1);
strMessage = GetArgs("message", HttpUtility.UrlDecode(strUrl));

private string GetArgs(string strArgName, string strUrl)
{
//处理Request,解决乱码!!!
string strArgValue = "";
string[] strList = strUrl.Split('&');
int intCount = strList.Length;
for (int i = 0; i < intCount; i++)
{
int intPos = strList[i].ToString().IndexOf("=");
if (intPos == -1) continue;
string strListArgName = strList[i].ToString().Substring(0, intPos);
if (strListArgName == strArgName)
{
strArgValue = strList[i].ToString().Substring(intPos + 1);
}
}
return strArgValue;
}

分享到:
评论

相关推荐

    风越.Net代码生成器 [FireCode Creator] V1.3 精简版

    《风越.Net代码生成器 [FireCode Creator]》是一款采用.Net FrameWork2.0框架、基于多种数据库的程序代码生成软件,可快速建立数据信息的:添加、编辑、查看、列表、搜索功能。默认提供asp、aspx两种代码框架及多个...

    Base64:支持SIMD的Base64编码解码,也支持base64Url

    一个用于base64编码/解码以及base64Url支持的.NET库。 可以对byte类型(对于UTF-8)或char类型的缓冲区进行编码。 解码可以从类型为byte (对于UTF-8)或char类型的缓冲区中读取。 编码/解码支持缓冲区链,例如...

    风越.net代码生成器v2.9

    《风越代码生成器 [FireCode Creator]》是一款采用.Net FrameWork2.0框架、基于多种数据库的程序代码生成软件,可快速建立数据信息的:添加、编辑、查看、列表、搜索功能。默认提供asp、aspx WEB程序、.net普通三层...

    风越ASP代码生成器 2.4

    基于.NET Framework2.0 《风越ASP代码生成器 [FireAsp Creator]》是一款采用.Net FrameWork2.0框架,基于Microsoft SQL Server及Microsoft Access数据库的ASP代码生成软件,可快速建立数据信息的:添加、编辑、查看...

    风越ASP代码生成器2.8

    内置的.net代码框架,能建立C#语言的.net解决方案,可在VS2005中直接编辑,既能帮助.net初学者快速入门,更可最大限度提高.net程序员的代码编写效率。 01、支持生成的ASPX/ASP/PHP/JSP等页面在本机自动发布、调试...

    Jakarta commons docs API CHM 格式

    commons-math 是一个轻量的,自包含的数学和统计组件,解决了许多非常通用但没有及时出现在Java标准语言中的实践问题. commons-modeler 创建符合 JMX 规范的 MBeans 机制 commons-net 网络和协议实现的集合 ...

    比较全面的:Jakarta-commons jar包(附: chm参考手册 & 资源简介)

    commons-math 是一个轻量的,自包含的数学和统计组件,解决了许多非常通用但没有及时出现在Java标准语言中的实践问题. commons-modeler 创建符合 JMX 规范的 MBeans 机制 commons-net 网络和协议实现的集合 ...

    风越ASP代码生成器FireAspCreatorv2.9.rar

    《风越代码生成器 [FireCode Creator]》是一款采用.Net FrameWork2.0框架,基于多种数据库的程序代码生成软件,可快速建立数据信息的:添加、编辑、查看、列表、搜索页面。通过界面模板与代码模板管理功能,可自定义...

    C#编程经验技巧宝典

    111 &lt;br&gt;0184 如何在ASP.NET中获取文件的扩展名 111 &lt;br&gt;0185 如何在ASP.NET中用URL在页面之间传值 112 &lt;br&gt;0186 如何使用IsPostBack实现ASP.NET页面加载 112 &lt;br&gt;0187 如何利用输出缓存技术缓存...

    JAVA上百实例源码以及开源项目

     通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 ...

    JAVA上百实例源码以及开源项目源代码

     通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 ...

    freemarker总结

    options:该参数可以省略,指定包含时的选项,包含encoding和parse两个选项,其中encoding指定包含页面时所用的解码集,而parse指定被包含文件是否作为FTL文件来解析,如果省略了parse选项值,则该选项默认是true. ...

Global site tag (gtag.js) - Google Analytics