使用Response.Redirect方法傳遞漢字,有時會發現所傳遞的值和接收到的內容不符,接受的值丟失了幾個字或者變成了一堆亂碼.那麼如何才能保證所傳遞的漢字被正確接收呢?
頁面A傳遞值的代碼如下: string Message=Server.UrlEncode("歡迎學習ASP.NET!");
Response.Redirect("WebForm2.asp?Msg="+Message); 頁面B接受值的代碼如下: string Message=Server.UrlDecode(Request.QueryString["Msg"]); 有些情況下傳遞的漢字變成亂碼是由於浏覽器和程序所用的編碼格式不同引起的,ASP.NET應用程序默認的編碼格式為"utf-8".打開程序的Web.config文件可以看到如下代碼: <?xml version="1.0" encoding="utf-8" ?> 可通過修改encoding屬性值改變應用程序的編碼格式,有些情況下為了解顯示中文亂碼的問題需要將此屬性設置為"gb2312".