`
shirlly
  • 浏览: 1652849 次
  • 性别: Icon_minigender_2
  • 来自: 福州
社区版块
存档分类
最新评论

【转】asp.net中URL参数传值中文乱码的三种解决办法

    博客分类:
  • .NET
阅读更多
在做Asp.Net开发的时候,经常会遇到页面乱码的问题,下面是在网上收集的相关资料,请大家参考:
解决的方法一般有3种:

1.设置web.config文件

<system.web>

......

<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />

......

</system.web>

2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。

>> 进行传递

string Name = "中文参数";

Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name)) ;

>> 进行接收

string Name = Request.QueryString["Name"];

Response.Write(Server.UrlDecode(Name)) ;

3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。

>> 进行传递

<script language="JavaScript">

function GoUrl()

{

var Name = "中文参数";

location.href = "B.aspx?Name="+escape(Name) ;

}

<body onclick="GoUrl()">

>> 进行接收

string Name = Request.QueryString["Name"];

Response.Write(Server.UrlDecode(Name)) ;

总结:

一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。

或用

Response.Redirect("test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国")) ;

//建议使用最后如果是从其他的页面获取中文参数没有乱码,那就更简单了

string message ="http://localhost/Test/test1.aspx?111="+System.Web.HttpUtility.UrlEncode("中华人明共和国");

http:

//你要获取某个页面的返回值的地址"

//发送请求

HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(message) ;

//接受请求

HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse() ;

Stream receiveStream = myHttpWebResponse.GetResponseStream() ;

StreamReader readStream = new StreamReader(receiveStream, System.Text.Encoding.GetEncoding("GB2312")) ;

//此为要取页面的返回值输出的返回结果

returnValue = readStream.ReadToEnd();

转自:http://www.cnzzad.com/tut/47825.html
分享到:
评论

相关推荐

    asp.net中URL参数传值中文乱码的三种解决办法

    在ASP.NET开发过程中,我们时常会遇到URL参数传递中文字符时出现乱码的问题。这个问题主要源于字符编码不一致导致的,下面将详细讲解三种解决这个问题的方法。 ### 方法一:设置Web.config配置 在ASP.NET应用的`...

    asp.net页面通过URL参数传值中文乱码问题解决办法

    在Asp.Net开发中,遇到页面通过URL参数传递中文字符时出现乱码是一个常见的问题。这个问题通常是由于字符编码不一致导致的。以下是三种常见的解决方法: 1. **配置Web.config文件**: 在Web.config文件的`...

    解析6种ASP.NET跨页面传值的方法

    ### 解析6种ASP.NET跨页面传值的方法 在ASP.NET开发中,跨页面传值是经常遇到的一个问题。为了确保用户体验良好且程序逻辑清晰,开发者需要掌握多种跨页面传值的技术。本文将详细介绍六种常用的ASP.NET跨页面传值...

    asp.net页面间的传值汇总

    本文将对几种常见的ASP.NET页面间传值方式进行深入解析,包括GET、POST、页面对象属性及Cookie,旨在帮助开发者更好地理解和运用这些技术。 #### 一、GET方式(使用QueryString显式传递) **方式描述**:GET方式...

    asp.net的ajax传值

    ASP.NET 是微软开发的一种用于构建Web应用程序的框架,它提供了丰富的功能和强大的工具来创建动态、交互式的网页。Ajax(Asynchronous JavaScript and XML)技术则是Web开发中的一个重要组成部分,允许在不刷新整个...

    ASP.NET中页面传值的几种方法

    ### ASP.NET中页面传值的几种方法 在ASP.NET开发中,页面间的传值是非常重要的一个环节,这对于实现用户交互、数据处理等功能至关重要。本文将详细介绍ASP.NET中常见的几种页面传值方法,并对其进行深入解析。 ###...

    asp.net 页面之间传值方法总结.

    ### ASP.NET 页面之间传值方法总结 在ASP.NET开发中,页面之间的数据传递是一项常见且重要的任务。数据的准确无误地从一个页面传递到另一个页面对于构建动态和交互式的Web应用至关重要。以下是对几种常用的ASP.NET...

    ASP.NET中页面传值的几种方法收藏

    根据提供的文件信息,本文将详细介绍ASP.NET中常用的几种页面传值方法,并对每种方法进行深入解析,帮助开发者更好地理解和应用这些技术。 ### 1. 使用表单提交 (Form Post) 这是最传统的页面传值方式之一,通过`...

    asp.net的几种传值方式练习

    在这个"asp.net的几种传值方式练习"中,我们将探讨四种主要的数据传递方法:Session、Cookie、Application和Server.Transfer。 1. Session(会话): Session是ASP.NET中用于存储用户特定数据的重要机制。当用户...

    asp.net页面各种传值方式

    ASP.NET页面传值是Web开发中的重要技能,它允许数据在不同的页面之间或者同一页面的不同生命周期阶段进行传递。本文将详细讲解五种常见的ASP.NET页面传值方式:Query String、Hidden Field、View State、Session以及...

    ASP.NET的几种传值方式

    以下将详细阐述标题和描述中提到的几种ASP.NET页面传值方式: 1. **表单提交**: 表单提交是最基础的传值方式,通过HTML `&lt;form&gt;` 标签实现。通常,表单提交默认会向自身页面提交,但如果需要提交到其他页面,需要...

    ASP.NET url参数传递加密及解密方法

    ASP.NET URL参数传递加密及解密是Web应用程序中常见的安全措施,主要目的是保护用户数据的隐私,防止中间人攻击和数据篡改。在ASP.NET框架中,我们可以利用内置的加密解密工具来实现这一功能。以下是一些关于如何在...

    关于asp.net中中文产生乱码问题

    ### ASP.NET 中中文乱码问题解析 #### 一、背景介绍 在开发基于 ASP.NET 的应用程序时,中文字符的正确显示往往是一个不容忽视的问题。由于编码格式的不同或配置不正确,很容易导致页面上的中文出现乱码现象。本文...

    ASP.NET跨页面传值技巧

    ASP.NET跨页面传值是Web应用程序中常见的需求,通常用于在不同页面之间传递数据。以下将详细介绍几种常用的ASP.NET跨页面传值技巧。 1. **使用QueryString变量**: QueryString是通过URL参数来传递数据的方式。在a...

    asp.net中五种页面传值方法

    asp.net中五种页面传值方法,熟悉使用的五种页面传值方法的使用,对你开发网站有大的帮助的

    asp.net 父子页面传值

    在ASP.NET中,父子页面之间的通信是Web应用程序中常见的需求,尤其在构建复杂交互的多层级界面时。本文将深入探讨如何在ASP.NET环境中实现父子页面间的值传递,并分享一些实用的技术和策略。 首先,我们要了解ASP...

    asp.net中页面之间的传值(三种方法)

    在ASP.NET中,页面间的值传递是一个常见的需求,本文主要介绍了三种实现方法:QueryString、Session变量和Server.Transfer。每种方法都有其特点和适用场景。 首先,使用QueryString是一种简单直观的方式。通过在URL...

    ASP.net跨页面传值方式

    QueryString变量是最简单的一种传值方式,它通过URL地址栏来传递参数。这种方式适用于安全性要求不高或者传递的数据结构较为简单的情况。 **优缺点:** - **优点:** - 实现简单,易于理解。 - 不需要额外的...

    ASP.NET页面间的传值的几种方法

    本文将详细介绍在ASP.NET Web Forms中三种常见的传值方法:Querystring、Session变量和Server.Transfer。 一、使用Querystring Querystring是一种简单直观的方式,通过URL参数传递数据。然而,它的主要缺点是数据...

    asp.net中文乱码:asp.net(C#)中文乱码问题

    asp.net默认的编码是UTF-8 js文件里的编码也是UTF-8 当你要在aspx页面上进行传中文参数时会出现乱码 asp.net中文乱码:asp.net(C#)中文乱码问题 接收参数页-----&gt; 传送参数页-----&gt;

Global site tag (gtag.js) - Google Analytics