ทุกวันนี้ ฉันมีปัญหากับปัญหาตัวอักษรจีนที่อ่านไม่ออก เป็นเรื่องปกติที่ข้อมูลภาษาจีนจะถูกแทรกลงใน My Sql และแสดงผลตามปกติในบรรทัดไคลเอ็นต์ Command "ดาวอังคาร".
ดังนั้นฉันจึงค้นหาทางออนไลน์และเห็นวิธีการต่างๆ มากมาย บางคนบอกให้เปลี่ยน default-Character-set=latin1 ใน my.ini เป็น default-Character-set=utf8 บางคนบอกให้เปลี่ยนวิธีการเข้ารหัสเริ่มต้นใน Eclipse และบางคนบอกให้เปลี่ยน <%@ page contentType="text/html;charset=gb2312" %>; และคนอื่นๆ บอกว่าให้เปลี่ยนอักขระการเชื่อมต่อ: Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/MyData?user= root& ;password=3211535&useUnicode=true&CharacterEncoding=GB2312"); .
หลังจากแก้ไขหลายครั้ง ฉันยังสับสนกับการแก้ไขหลายวิธีและวิธีการเข้ารหัสหลายวิธี แต่บางครั้งหลังจากเปลี่ยนวิธีการเข้ารหัสบางอย่าง มันก็กลายเป็นโค้ดที่อ่านไม่ออกอีกแบบหนึ่ง เมื่อคืนฉันทำงานจนถึง 4 ทุ่ม แต่ก็ยังไม่ได้ผล ฉันสงบลงและคิดว่าควรเริ่มจากแหล่งที่มา ดังนั้นฉันจึงออนไลน์เพื่อตรวจสอบว่า JSP ใช้วิธีการเข้ารหัสแบบใดในการอ่านข้อมูลจาก My sql มีหลายความคิดเห็นดังนั้นฉันจึงลองแยกกัน ในที่สุดก็สำเร็จ หนึ่งในประโยค: <%=sqlRst.getString(1)%> ถูกเปลี่ยนเป็น <%=new String(sqlRst.getString(1).getBytes("iso8859-1"),"gb2312")%> . แปลงวิธีการเข้ารหัสจาก iso8859-1 เป็น gb2312 เพื่อให้แสดงภาษาจีนได้สำเร็จ
บทความนี้มาจากบล็อก CSDN โปรดระบุแหล่งที่มาเมื่อพิมพ์ซ้ำ: http://blog.csdn.net/laolik/archive/2009/12/18/5029459.aspx
-