将字符转换为unicode码

将字符转换为unicode码:

  

 /**
   * unicode转义字符
   * @param ch
   * @param out
   */
  public static void unicodeEscape(int ch, CharArr out) {
    out.write(‘\\‘);
    out.write(‘u‘);
    //字符ch向右移动12位之后,取最后一位
    out.write(HEX_CHARS[ch>>>12]);
    //字符ch向右移动8位之后,取最后一位
    out.write(HEX_CHARS[(ch>>>8)&0xf]);
    //字符ch向右移动4位之后,取最后一位
    out.write(HEX_CHARS[(ch>>>4)&0xf]);
    //取字符ch十六进制的最后一位
    out.write(HEX_CHARS[ch&0xf]);
  }

说明:

  unicode码用16进制表示,一般是4位,如小写字母‘a‘,表示为0x0041.这里我们对字符的十进制数字采用16位运算,生成unicode字码.

代码中采用位运算符号&,0xf为16进制数, 0xf & 65 = 0xf & 0x41 = 1 .也就是取16进制数最低一位.可以采用这种方法和移位运算分别取到该字符unicode编码的四位16进制数字.

不当之处,敬请指正! 谢谢!

时间: 2024-10-10 21:10:34

将字符转换为unicode码的相关文章

查找字符对应Unicode码的十进制数字

//将字符转换为Unicode码中字符对应十进制数字 int byte0 = 'A' & 0xff;//byte0=65 参考文档:http://baike.baidu.com/view/2602518.htm  http://blog.idf.cn/2014/02/unicode-isnt-harmful-for-health-unicode-myths-debunked-and-encodings-demystified/

Unicode码和中文互转

// 将Unicode码转换为中文 public static String tozhCN(String unicode) { StringBuffer gbk = new StringBuffer(); String hex[] = unicode.split("\\\\u"); for (int i = 1; i < hex.length; i++) { // 注意要从 1 开始,而不是从0开始.第一个是空. int data = Integer.parseInt(hex[i

Python中Unicode码和非Unicode码引起的错误与格式转换

1.1. 问题 Problem You need to deal with data that doesn't fit in the ASCII character set. 你需要处理不适合用ASCII字符集表示的数据. 1.2. 解决 Solution Unicode strings can be encoded in plain strings in a variety of ways, according to whichever encoding you choose: Unicode

C语言字符转换ASCII码

//函 数 名:CharToHex()//功能描述:把ASCII字符转换为16进制//函数说明://调用函数://全局变量://输    入:ASCII字符//返    回:16进制/////////////////////////////////////////////////////////////////////unsigned char CharToHex(unsigned char bHex){    if((bHex>=0)&&(bHex<=9))        b

字符在内存中最终的表示形式是什么?是某种字符编码还是码位(Code Point)?

字符在内存中最终的表示形式是什么?是某种字符编码还是码位(Code Point)? 根据我的了解,编码中有三个核心概念:1. 字符集(Character Set),可以说是一个抽象概念,字符的合集2. 码位(Code Point),将抽象的字符集中每一个字符映射到一个整数3. 字符编码(Encoding),按照某种编码规则用二进制来表示一个字符 我对码位这个概念理解的不是很清楚,Code point中说: The notion of a code point is used for abstra

JavaScript字符转Unicode,顺便说句:GitHub的Oh no页面很亮

遇到个输不出来的字符怎么办,因为输不出来的字符一般又是不常见大多数时候连名字也喊不出来的,所以想问百度谷歌大大也不大可能.如果是小白用户肯定会去把输入法软盘打开切换到其他键盘一个一个找.即使有搜狗输入法这样强大的特殊字符集的汇总,也还是要找啊. 话说那天在GitHub上折腾的时候不小心整出个错误页面(你们还是打消重现的想法吧,很难),一看好别致,我去,感叹与问号的合体,我去这是什么符号? 啥也表说了兴许以后在自己的设计中用得上,于是就copy了下来. 后来一想哎不对啊,我不能打出来,我要使用的时

python用正则表达式怎么查询unicode码字符

import re data = open('a.txt') fh = open('b.txt', 'w') """Search the string begining with '['""" p = re.compile(r'\s*[\u3010]') for each_d in data: if re.match('\s*3\d{4}', each_d): each_d = each_d.strip() print(each_d + ': '

Gson将一些字符自动转换为Unicode转义字符,怎么办?

最近用富文本编辑器,编辑微信素材的时候,发现微信群发的消息内容中有许多Unicode编码字符. 后来发现是Gson使用不当的问题. Gson gson = new Gson(); String articleListStr = gson.toJson(articleList); //将素材上传到微信服务器,系统群发的消息,其实是微信服务器上的素材. String resposeString = HttpUtils.post(createNewsUrl,articleListStr); 原来,Gs

【原创】利用typeface实现不同字体的调用显示及String转换为Unicode

最近工作用到,就写个小demo demo实现从assets中利用typeface调用不同字体,并在editText中显示出来 1.layout中创建activity_main.xml文件 布局代码如下: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 andr