unicode编码问题

majin777 2009-06-19 09:06:30
我知道'\u000a'和'\u000d'是表示回车字符,不明白在eclipse中,
char c='\u000a'
为何提示字符常量无效。求解,谢谢各位!
...全文
70 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangfeitarena 2009-06-20
  • 打赏
  • 举报
回复
java中的字符是可以用Unicode编码来表示的。但是unicode中有一些比较特殊的字符,比如换行,回车等是不能用unicode代码的,在java中有其特殊的写法,如:\u000a 换行,在java中用\n来表示;\u000d 回车,在java中用\r来表示;还有\",\\等等。也就是说在用到这些字符的unicode时要用其代替.
majin777 2009-06-20
  • 打赏
  • 举报
回复
各位,我还是没弄明白!可是,'\u000b','\u000c','\u000e','\u000f'都是合法的啊!
HinanaiTenshi 2009-06-19
  • 打赏
  • 举报
回复
[Quote=引用回复:]
补充一下
你看到的
char c='\u000a'

在编译阶段实际已经被转换成
char c='
a'
结果可想而知
[/Quote]
有语法错误是不会编译的。
hbgzg3006 2009-06-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 vampireallen 的回复:]
补充一下
你看到的
Java codecharc='\u000a'

在编译阶段实际已经被转换成
Java codecharc='a'
结果可想而知
[/Quote]
???
vampireallen 2009-06-19
  • 打赏
  • 举报
回复
补充一下
你看到的

char c='\u000a'


在编译阶段实际已经被转换成

char c='
a'

结果可想而知
HinanaiTenshi 2009-06-19
  • 打赏
  • 举报
回复
char c = 0x000a;
把html的字符和java的16进制混淆了吧。
vampireallen 2009-06-19
  • 打赏
  • 举报
回复
\u000a \u000d 属于单行注释,在程序里无法调用
你可以试一下
// \u000d hello
compiler一样报错
用'\n'替换就是了
bingsha1976 2009-06-19
  • 打赏
  • 举报
回复
String s = "中国人";
try {
byte[] unicodeb= s.getBytes("unicode");
String s_unidode = new String(unicodeb,"unicode");
System.out.print(s_unidode.getBytes("unicode"));
} catch (UnsupportedEncodingException e) {

e.printStackTrace();
}

临远 2009-06-19
  • 打赏
  • 举报
回复
char c='u000a'

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧