我想应该是.数据库用的是sql server2000,请问如何解决?

解决方案 »

  1.   

    public static String changeUnitoJIS(String s) {

    if (s == null || s.equals("")) return s;

    StringBuffer sb = new StringBuffer();

    char c;

    for (int i = 0; i < s.length(); i++) {

    c  = s.charAt(i);

    if (FeSetupInclude.PAGE_CHARSET_STRING.equalsIgnoreCase("SHIFT_JIS") || 
    FeSetupInclude.PAGE_CHARSET_STRING.equalsIgnoreCase("JISAutoDetect")) {

    switch (c) {
    case 0xff3c: // FULLWIDTH REVERSE SOLIDUS ->
    c = 0x005c; // REVERSE SOLIDUS
    break;
    case 0xff5e: // FULLWIDTH TILDE ->
    c = 0x301c; // WAVE DASH
    break;
    case 0x2225: // PARALLEL TO ->
    c = 0x2016; // DOUBLE VERTICAL LINE
    break;
    case 0xff0d: // FULLWIDTH HYPHEN-MINUS ->
    c = 0x2212; // MINUS SIGN
    break;
    case 0xffe0: // FULLWIDTH CENT SIGN ->
    c = 0x00a2; // CENT SIGN
    break;
    case 0xffe1: // FULLWIDTH POUND SIGN ->
    c = 0x00a3; // POUND SIGN
    break;
    case 0xffe2: // FULLWIDTH NOT SIGN ->
    c = 0x00ac; // NOT SIGN
    break;
    case 0x2015:
    c = 0x2014;
    break;
    case 0x339c:
    sb.append('m');
    c = 'm';
    break;
    }
    } else {
    switch (c) {
    case 0x301c: // FULLWIDTH TILDE ->
    c = 0xff5e; // WAVE DASH
    break;
    }
    }

    sb.append(c);
    }

    return new String(sb); } 
      

  2.   

    public static String changeUnitoJIS(String s) {
    if (s == null || s.equals("")) return s;
    StringBuffer sb = new StringBuffer();
    char c;
    for (int i = 0; i < s.length(); i++) {
    c  = s.charAt(i);
    if (FeSetupInclude.PAGE_CHARSET_STRING.equalsIgnoreCase("SHIFT_JIS") || 
    FeSetupInclude.PAGE_CHARSET_STRING.equalsIgnoreCase("JISAutoDetect")) {
    switch (c) {
    case 0xff3c: // FULLWIDTH REVERSE SOLIDUS ->
    c = 0x005c; // REVERSE SOLIDUS
    break;
    case 0xff5e: // FULLWIDTH TILDE ->
    c = 0x301c; // WAVE DASH
    break;
    case 0x2225: // PARALLEL TO ->
    c = 0x2016; // DOUBLE VERTICAL LINE
    break;
    case 0xff0d: // FULLWIDTH HYPHEN-MINUS ->
    c = 0x2212; // MINUS SIGN
    break;
    case 0xffe0: // FULLWIDTH CENT SIGN ->
    c = 0x00a2; // CENT SIGN
    break;
    case 0xffe1: // FULLWIDTH POUND SIGN ->
    c = 0x00a3; // POUND SIGN
    break;
    case 0xffe2: // FULLWIDTH NOT SIGN ->
    c = 0x00ac; // NOT SIGN
    break;
    case 0x2015:
    c = 0x2014;
    break;
    case 0x339c:
    sb.append('m');
    c = 'm';
    break;
    }
    } else {
    switch (c) {
    case 0x301c: // FULLWIDTH TILDE ->
    c = 0xff5e; // WAVE DASH
    break;
    }
    }

    sb.append(c);
    }
    return new String(sb);
      

  3.   

    这是一个将字符转成日文系统里认识的CODE的例子,看一下,改一改就可以用了
      

  4.   

    equals在英文字母和数字时可以用,好像很少出问题,但是和中文相比较就不行了你可以用compareTo()函数试一下
    if(s.compareTo("中文")==0)
    out.println("ok");^_^试一下
      

  5.   

    String s=rs.getString("wh-name");换成下面就成了。。String s=new String((rs.getString("wh-name")).getBytes("ISO-8859-1"));