我的jsp网页的页面的编码是8859_1,mysql数据库的编码是utf-8,我尝试用
String ctry = new String(request.getParameter("ctry").getBytes("8859_1"),"utf8");
转换,然后用
String sql_insert = "insert into  vcard_search(lusername,ctry,lctry) values(''+rand(),'"+ctry+"','"+ctry+"')";
stmt.executeUpdate(sql_insert);
写进数据库。为什么中文就只有问号,英文数字正常,请指教!

解决方案 »

  1.   

    String ctry = new String(request.getParameter("ctry").getBytes("8859_1","utf8"));
      

  2.   

    String ctry = new String(request.getParameter("ctry").getBytes("8859_1"), "GB2312");
    搂主这个应该没错数据库中的记录是不是也是乱码
      

  3.   

    用MYSQL的客户端Navicat直接添加数据没有问题,可以正常显示,跪求高手指教!
      

  4.   

    先把request.getParameter("ctry")在程序中打印出来看是不是乱码,再打印转换后的是不是乱码,mysql的连接url后面加上编码,再试
      

  5.   

    直接打印到页面不是乱码,请问楼上在MYSQL的连接URL后面怎么加编码?谢谢!!
      

  6.   

    不要无目的的乱转化,http://www.regexlab.com/zh/encoding.htm
      

  7.   

    这个上面有几个解决方案:http://blog.csdn.net/lip009/archive/2006/09.aspx