ปัญหาภาษาจีนเป็นปัญหาที่มักพบในแอปพลิเคชัน
สิ่งนี้จะเกี่ยวข้องกับการถอดรหัสอักขระ ในแอปพลิเคชันของเรา เรามักจะใช้ new String(fieldType.getBytes("iso-8859-1"), "UTF-8"); อย่างไรก็ตาม วิธีการนี้ถูกจำกัดโดยสภาพแวดล้อมของแอปพลิเคชันเฉพาะ และอักขระภาษาจีนที่อ่านไม่ออกมักจะปรากฏขึ้นเมื่อสภาพแวดล้อมการปรับใช้แอปพลิเคชันเปลี่ยนแปลง
นี่คือโซลูชันที่สามารถใช้ได้ในสภาพแวดล้อมการปรับใช้แอปพลิเคชันใดๆ วิธีนี้มีสองขั้นตอน:
1. ใช้เมธอด Escape(encodeURIComponent(fieldValue)) เพื่อเข้ารหัสบนไคลเอนต์ เช่น:
คัดลอกรหัสรหัส ดังต่อไปนี้:
title=escape(encodeURIComponent(title)); //นี่คือฟังก์ชันใน js
url="<%=request.getContextPath()%>/print/printList!printTable.action?title="+title;
2. ใช้ java.net.URLDecoder.decode(getRequest().getParameter("title"),"UTF-8") บนเซิร์ฟเวอร์เพื่อถอดรหัส
-------------------------------------------------- -------------------------------------------------- -------------------------------
ปัญหาอักขระที่อ่านไม่ออกใน parent.window.location.href และ src ใน iframe
หากต้องการส่งภาษาจีนในที่อยู่ URL ทั้งสองนี้ คุณต้องเข้ารหัสแล้วจึงถอดรหัส
การเข้ารหัส: encodeURI(encodeURI("สตริงที่มีภาษาจีน"))
การถอดรหัส: java.net.URLDecoder.decode("สตริงที่จะถอดรหัส", "utf-8");