在某个页面看到用了一个标签然后输出比如user.name就能打出"姓名"的中文,然后发现是用了struts的国际化,在某配置文件中发现会有配置信息,如:user.name=\u7BA1\u7406\u5458
谁能告诉我"\u7BA1\u7406\u5458"这是什么编码?怎么查到的,比如现在我想打印"我是超人"这四个字对应的编码是多少?怎么查啊?

解决方案 »

  1.   

    这是ASCII编码,因为*.properties只支持ASCII。
    这些都是可以用native2asii来转换的。
      

  2.   

    \u7BA1\u7406\u5458是Unicode,\u是转义,表明后面的是Unicode。
      

  3.   


    对头
    myeclipse编辑properties文件时会自动帮你转
      

  4.   


    自动帮我转?你意思是我在*.properties中写 user.sex="性别",编译以后它会自动帮我转?
      

  5.   

     用native2asii命令 后面接“我是超人”
      

  6.   

    1.\u7BA1\u7406\u5458指的是Unicode码。
    2.创建xxx.properties的时候,现在高版本的MyEclipse根本不native2asii转化了。
      你直接打开properties文件。在打开文件的窗口中有个properties tab窗口,在那个窗口中可以通过
    add输入name*(也就是key)和value(输入汉字)。然后保存,打开source窗口,你自动会发现它已经变成了Unicode了。
      

  7.   

    在DOS下用native2asii命令便可进行编码转化了。
    格式:native2asii 需要转化的文件  转化文件的存放路径/转化文件的名称
      

  8.   


    我发现每次我问的问题就你答的最靠谱,不过上面说的没明白,在MyEclipse中打开properties文件是么?哪有什么properties tab窗口啊?
      

  9.   

    多谢大家帮忙,我来做个结尾吧,可以在java中写一个很简单的程序public String toUNICODE(String s)
        {
            StringBuffer sb=new StringBuffer();
            for(int i=0;i<s.length();i++)
            {
                if(i<=256)
                {
                    sb.append("\\u00");
                }
                else
                {
                    sb.append("\\u");
                }
                sb.append(Integer.toHexString(s.charAt(i)));
            }
            return sb.toString();
        }
    就可以了