json字串傳值到後台出現亂碼的問題的解決方法

2021-09-08 12:25:04 字數 551 閱讀 2025

1.原因:前台的編碼是iso-8859-1,後台的編碼是utf-8,所以會衝突

2.解決方法:先用iso-8859-1解碼成位元組陣列,再轉成utf-8編碼格式

string strw = new string(request.getparameter("activitylist").getbytes("iso-8859-1"), "utf-8");

3.讀取html等文字檔案的時候假如有亂碼要先看html檔案的編碼方式,可能是utf-8或者是gb2312,假如是utf-8則不用轉直接返回,假如是gb2312,則先用gb18030解碼成位元組陣列,再轉換成utf-8

html檔案編碼方式是utf-8:

new string(byte.tobytearray());//因為bytearrayoutputstream在write的時候預設是utf-8編碼,所以不需要轉換

html檔案編碼方式是gb2312:

new string(byte.tostring("gb18030").getbytes(),"utf-8");

js使用ajax傳值給後台,後台返回字串處理

之前使用js獲取後台生成的json字串,然後給select填充值,這次需要重新獲取一次。這裡的目標是,在乙個input輸入框裡,輸入乙個使用者名稱,判斷是否為空,是否不存在,如果存在返回幾個欄位給前台,前台再繫結到其他input上 直接壘 html頁面 js 後台 webmethod public ...

字串寫入到json檔案

背景 php產生公告 傳送到cgi 在cgi把該公告的json 字串寫入到檔案內 轉義後的字串 通過 jsoncpp 操作 int write notice to json string str path,const string str content std string json file w...

URL 傳值字串亂碼 http請求出現亂碼

出現這個情況是url對於字串或者特殊字元進行了編譯處理用乙個類庫的方法就可以解決這個問題 傳送端 請求的字串鏈結位址 進行類庫編碼轉換 var enurl encodeuri url window.open enurl 傳送請求 接收端 name urldecoder.decode request....