في هذه الأيام، كنت منزعجًا من مشكلة الأحرف الصينية المشوشة، ومن الطبيعي أن يتم إدراج البيانات الصينية في My Sql وعرضها بشكل طبيعي في سطر عميل الأوامر "المريخ".
لذلك بحثت عبر الإنترنت ورأيت العديد من الطرق: قال البعض لتغيير 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"); .
بعد عدة تعديلات، كنت في حيرة من أمري بسبب العديد من التعديلات وطرق التشفير المتعددة، وقد ظلت مشوهة بعد تغييرها مرارًا وتكرارًا، وفي بعض الأحيان بعد تغيير طريقة تشفير معينة في مكان ما، أصبحت نوعًا آخر من التعليمات البرمجية المشوهة. لقد عملت عليها حتى الساعة 11 صباحًا الليلة الماضية، لكنها ما زالت لا تعمل وهدأت وفكرت، يجب أن أبدأ من المصدر، لذلك اتصلت بالإنترنت للتحقق من طريقة التشفير التي يستخدمها JSP لقراءة البيانات من My. كان هناك العديد من الآراء، لذلك قمت بتجربتها بشكل منفصل. نجحت أخيرًا، تم تغيير إحدى الجمل: <%=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.
-