当前页面: 开发资料首页 → J2SE 专题 → 一个java 转换unicode的问题
一个java 转换unicode的问题
摘要: 一个java 转换unicode的问题
public class Test{
public static void main(String[] args){
for(int i=0;i-#60;args.length;i++){
System.out.println(-#34;-#34;+args[i]);
}
System.out.println(-#34;/u5C01/u53D1-#34;);
}
}
请问传参数 java Test /u5C01/u53D1
和 直接 java Test
为什么结果不一样?
什么时候会把unicode转换过来再输出到屏幕呢?
一个是在编译期
一个是运行期
编译时会按照工具指定的字符集编码把字符串“/u5C01/u53D1”转化为相应的字符串
你的IDE工具可能设置的是UTF-8
而运行期接收的参数“/u5C01/u53D1” 只是一串字符串而已 不会做相应的转化
感谢楼上的回答
我如果想在运行期转化 怎么办?
又没有相关的api之类的?
你可以使用 java Test 封发
字符集编码的问题看起来似乎很简单
但是完整的用例要考虑到很多地方
你的例子分别涉及到
.java编辑环境
.java编译环境
.class运行环境
要确保每一个步骤的字符集编码都要明确统一
否则的话就会出现乱码或不想要的结果
非常感谢!