最近組長叫我做一個把查詢出的數據用POI導出Excel的功能,我前台把要查詢的字段通過如下傳回后台時,發現出現了亂碼問題
window.open('user!export?name='+name);
試了一下只有中文出現亂碼,於是搜索了一下相關的文檔,找到了解決亂碼的辦法。
瀏覽器自動把參數值用"ISO8859-1"的方式編碼,於是前端需要解碼兩次
var val = encodeURI(name);
val = encodeURI(val); window.open('user!export?name='+val);
在后台的controller里面用URLDecoder類再解碼一次
URLDecoder.decode(name.trim(), "utf-8")
這樣取出來的值就不會出現亂碼了。
