當我們使用 Response.Cookies 方法寫入客戶端資料時,如果內容包含中文文字,那麼到了客戶端,它都會變成亂碼;等你使用 Request.Cookies 方法讀取回來時,它還是亂碼,並不會自動還原成原來的字串。這種現象,在英文中並不會出現
因此,你應該使用 HttpUtility.UrlEncode 和 HttpUtility.UrlDecode 方法對要存入的資料進行編碼和解碼的動作。例如,把
Response.Cookies("ABC").Value = "ABC" 改成
Response.Cookies("ABC").Value = HttpUtility.UrlEncode("ABC")
然後,把
Str = Request.Cookies("ABC").Value 改成
Str = HttpUtility.UrlDecode(Request.Cookies("ABC").Value)
如此就可以了。