首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

接受 Request.Path 的值是乱码,如何会事呢?请进看该url

2012-01-02 
接受 Request.Path 的值是乱码,怎么会事呢?请进看该urlhttp://....25/ntid-5_ntn-%c4%bf_menuname-_menust

接受 Request.Path 的值是乱码,怎么会事呢?请进看该url
http://....25/ntid-5_ntn-%c4%bf_menuname-_menustyle-1_action-3=0.html
我在程序中接收   用   Request.Path   来取值,得到这样的结果:
ntid-5_ntn-Ŀ_menuname-_menustyle-1_action-3=0.html
“-Ŀ_”这个地方是乱码?怎么会使呢?

超级郁闷!!!!

[解决办法]
你在传值前用url编码,在取值的时候用相应的解码看看
[解决办法]
UrlEncode?
[解决办法]
UrlDecode
[解决办法]
encodeurl()
[解决办法]
不懂,帮顶
[解决办法]
还是建议 楼主 不要在http地址中 使用中文...
[解决办法]
HtmlDecode
[解决办法]
而不是UrlDecode
[解决办法]
楼主 修改
web.config
中的编码 格式 以及页面端编码格式试试
比如utf-8修改成gb2312看看
[解决办法]
ASP.NET很灵活,这归功于它采用文本文件方式的配置方式. 另外的那种用页面标识符的方法应该是从ASP延续下来的. 写ASP+程序时候碰到中文显示问题,运行后发现ASP+从数据库中读出来的中文全部变成了?????,解决办法:

  方法一:

  在config.web中设置globalization段
<configuration>
<globalization
requestencoding= "utf-8 "
responseencoding= "utf-8 "
/>
</configuration>

  可以是utf-8、gb2312等等。

  方法二:

  后来订阅了微软的新闻组,在微软的新闻组dotnet.framework.aspplus.general中发现有讨论这
个问题的文章,方法为添加 <%@ CODEPAGE = "936 " %> 到每一页的开头,有点类似于jsp中的
<%@ page contentType= "text/html;charset=gb2312 "%>
赶紧测试了一下,果然OK!!!

  例子如下面所示:
<%@ CODEPAGE = "936 " %>
<%@ Import Namespace= "System.Data " %>
<%@ Import Namespace= "System.Data.ADO " %>
<%@ Import Namespace= "System.Globalization " %>
<html>
<head>
<meta http-equiv= "Content-Type " content= "text/html; charset=gb2312 ">

热点排行