查询:new String(rst.getString(2).getBytes("ISO-8859-1"),"gb2312");提交:sqlstr = new String(sqlstr.getBytes("gb2312"),"ISO8859-1");

解决方案 »

  1.   

    没JAVA环境,写了个C#代码,将就看一下思路吧:
    //////////////////////////////////////////////////////
    String str = "%A0%D0%BB%CC";//将字符串通过"%"截取为字符串数组
    String[] strArr = str.Split(new char[]{'%'});//输出结果的字符串
    String strResult = "";byte[] buffer = new byte[strArr.Length];
    for (int i=0; i<strArr.Length; i++)
    {
        //如果为空,继续
        if (strArr[i].Equals(""))
        {
            continue;
        }    int iRe = Conv(strArr[i]);
        char ch = (char)iRe;
        String str = new String(new char[]{ch});
        strResult += str;
    }//输出结果
    MessageBox.Show(strResult);/// <summary>
    /// 从十六进制的字符串转化成10进制int输出
    /// </summary>
    private int Conv(String str)
    {
        str = str.ToLower();
        int j = 0, all = 0;
        for (int i=(str.Length-1); i>=0; i--)
        {
            int iRe=0;
            char ch = str[i];
            if ((ch >= 'a') && (ch <= 'f'))
            {
                iRe = (ch - 'a') + 10;
            }
            else
            {
                iRe = int.Parse(new String(new char[]{ch}));
            }
            all = iRe*(int)(Math.Pow(16, j));        j++;
        }
        return all;
    }
      

  2.   

    hainang1234(鼠·神·泪)  很强嘛谢谢,有没有更好的方法!
      

  3.   

    String str = "%A0%D0%BB%CC";String result=URLDecodeer.decode(str,"UTF-8");其实这个是URL编码,如果有中文一般都是使用UTF--8转回来