取new String(StrValue.getBytes("iso8859-1"),"gb2312")
存new String(StrValue.getBytes("iso8859-1"));

解决方案 »

  1.   

    自己写一个转换的class吧import java.sql.*;
    import java.io.*;
    import java.util.*;//import oracle.jdbc.driver.*;public final class Jdbc_GB {
    public static String changeFromGb(String sHTML)
    {
    StringBuffer svg=new StringBuffer();
    try
    {
    StringBufferInputStream std=new StringBufferInputStream(sHTML);
    BufferedReader bvb=new BufferedReader(new InputStreamReader(std,"GB2312"));
    String tmp=null;
    while((tmp=bvb.readLine())!=null)
    {
    svg.append(tmp);
    }
    std.close();
    bvb.close();
    }
    catch(Exception eee)
    {
    System.out.println(eee);
    }
    return svg.toString();
    }
    public static String changeToGb(String vvv)
    {
    if(vvv==null)
    {
    return null;
    }
    try
    {
    ByteArrayOutputStream byt= new ByteArrayOutputStream();
    BufferedWriter w = new BufferedWriter(new OutputStreamWriter(byt,"GB2312"));
    w.write(vvv);
    w.flush();
    byte[] bytes=byt.toByteArray();
    StringBuffer svg=new StringBuffer();
    for(int i=0;i<bytes.length;i++)
    {
    svg.append((char)bytes[i]);
    }
    vvv=svg.toString();
    byt.close();
    w.close();
    }
    catch(Exception e)
    {}
    return vvv;
    }                    
    public static String GB(String str)
    {
    BufferedReader bsr = null;
    StringBuffer strBuffer = new StringBuffer();
    try 
    {
    bsr = new BufferedReader(new InputStreamReader(new StringBufferInputStream(str), "GB2312"));
    while(bsr.ready()) 
    {
    strBuffer.append(bsr.readLine());
    }
    bsr.close();
    }
    catch(Exception e)
    {
    System.out.println(e.getMessage());
    }
        return strBuffer.toString();
    }
    }