up
会不会是两个引号的关系。
还有java的汉字编码实在是太软了。
什么new String("汉字".getbytes(iso...""),"gb2312")转换代码实在是好像帮不了你,帮你up

解决方案 »

  1.   

    我输入的时候是没有引号的,用jdk的native2ascii.exe可以把本地编码转换成unicode,但是jdk没有提供反向转化的工具!
      

  2.   

    说错了,我对native2ascii也是刚知道,可以这样利用native2ascii -reverse 就可以实现unicode到本地码的转换了,但是我很想知道编程实现的原理,望不吝赐教!
      

  3.   

    import java.net.URLDecoder
    String oldStr=""//这里是你取得unicode的串。
    String  urlStr=URLDecoder.decode(oldStr);
      

  4.   

    public class Unicode2GB{
      public static void main(String[] arg){
       try{ 
        String str = "";//这里是你取得unicode的串
        str = new String(str.getBytes(),"gb2312");
        System.out.println(str);
       }catch(java.io.UnsupportedEncodingException e){
       }
     
      }
    }}
      

  5.   


    源程序如下://UnicodeTest.javapublic class UnicodeTest
    {  public UnicodeTest()
      {
      }  public static String decode(String s)
      {
         StringBuffer sb = new StringBuffer();
         boolean escape = false;
         for(int i=0; i<s.length(); i++)
         {
            char c = s.charAt(i);
            switch (c)
            {
                    case '\\':
                        escape = true;
                        break;
                    case 'u':
                    case 'U':
                        if (escape)
                        {
                          try
                          {
                             sb.append((char)Integer.parseInt(
                                             s.substring(i+1,i+5),16));
                              escape = false;
                          }
                          catch (NumberFormatException e) {
                              throw new IllegalArgumentException();
                          }
                          i += 4;
                        }
                        else
                        {
                          sb.append(c);
                        }
                        break;
                    default:
                        sb.append(c);
                        break;
            }
         }     return sb.toString();
      }  public static void main(String[] args)
      {
         // 假设这个字符串是从文件中读取到的
         String s = "\\u6CA1\\u6709";     // 转换并打印
         System.out.println(decode(s));
      }}