我获得的String值为utf-8编码的 阿语 通过jsp入库 库的编码为iso8859-1的所以想转成iso8859-1的编码
request.setCharacterEncoding("utf-8");
String f_pgmname = request.getParameter("test1");
new String(f_pgmname.getBytes("utf-8"),"ISO8859-1");
然后再把f_pgmname 入库 
结果不对 乱码  请高手帮助下 多谢

解决方案 »

  1.   

    取值
    String f_pgmname = new String(request.getParameter("test1").getBytes("utf-8"),"iso-8859-1")
    再将 f_pgmname 写入数据库取值
    String str = new String(f_pgmname.getBytes("iso-8859-1"),"utf-8")
    utf-8也可以改为gb2312
      

  2.   

    试过了 不管用啊 您这个String f_pgmname = new String(request.getParameter("test1").getBytes("utf-8"),"iso-8859-1") 
    再将 f_pgmname 写入数据库   就等于我上边写的啊  就是合一起写了 
      

  3.   

    首先这个想法我认为是错误的。
    UTF-8和ISO-8859-1之间的转换:ISO-8859-1可以转成UTF-8,但是UTF-8不能转换成ISO-8859-1,可以理解为强制类型转换,把一个高精度的类型转成低精度的,会造成数据信息的丢失,真正原因是UTF-8编码的中文字符要远大于ISO-8859-1的字符集,所哟强行转化在ISO-8859-1就会没有编码表中没有匹配的位置。
      

  4.   

    您的意思就是 uft8的阿语 我要入iso8859-1的库 只能写程序 把阿语的几种字符判断出来 转成iso8859-1的字符 再入库 没有其他办法了么
      

  5.   

    我想知道的是为什么不把库弄成UTF-8的?