注册 | 登录 | 设为首页 | 加入收藏
您当前的位置:飞翔学院-IT中国 → 编程开发JSP → 文章内容

返回中文unicode的byte字符串

作者:佚名 来源:不详 发布时间:2007-11-29 23:55:34

  工作中需要这样的功能,下面是实现代码,比如输入“朋友”,输出/u0b67/ucb53

public class UnicodeByteUtil {
public static void main(String[] args) {
UnicodeByteUtil instance = new UnicodeByteUtil();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line;
try {
while ((line = reader.readLine()) != null) {
if (line.trim().equals("q")) System.exit(0);
String s = instance.getBytes(line);
System.out.println("bytes:" + s);
//System.out.println("line:"+);
}
} catch (IOException e) {
e.printStackTrace();
}
}

String getBytes(String s) {
try {
StringBuffer out = new StringBuffer("");
byte[] bytes = s.getBytes("unicode");
for (int i = 2; i < bytes.length; i++) {
out.append("\u");
String str = Integer.toHexString(bytes[i+1] & 0xff);
for (int j = str.length(); j < 2; j++) {
out.append("0");
}
out.append(str1);
}
return out.toString();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return null;
}
}
}

作者Blog:http://blog.csdn.net/superlmj/
相关文章
返回中文unicode的byte字符串
根据BOM获得实际encoding返回相应Reader
系统寻找XML解析器的顺序
字节码工程库简介
[转载]利用 JAXB 通过 XML 模式生成 XML 文档

对该文的评论
zhwxsytia ( 2005-01-27)
我试了一下?o应该把String getbyes(string s) 方法改为如下才可以?o否则错误
try {
StringBuffer out = new StringBuffer("");
byte[] bytes = s.getBytes("unicode");
for (int i = 2; i < bytes.length-1; i+=2) {
out.append("\u");
String str = Integer.toHexString(bytes[i+1] & 0xff);
for (int j = str.length(); j < 2; j++) {
out.append("0");
}
String str1 = Integer.toHexString(bytes[i] & 0xff);

out.append(str);
out.append(str1);
}
return out.toString();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return null;
}


  • 打印文档
  • 推荐好友
  • 返回顶部
  • 增大字体
  • 减少字体
关于本站 | 工作机会 | 合作网站 | 广告服务 | 市场合作| 联系我们 | 抽奖活动
版权所有: 武汉威俊科技有限公司 Copyright 2005-2007 www.ITCNW.COM All rights reserved