package my.unicode;

 import java.util.regex.Matcher;
import java.util.regex.Pattern; public class UnicodeSwitchChinese
{
/**
*
* 转:http://blog.csdn.net/z69183787/article/details/25742307
*
* 将字符串(不限于中文)转换为十六进制Unicode编码字符串
*/
public static String stringToUnicode(String str)
{
str = (str == null ? "" : str);
String tmpStr = "";
StringBuffer sb = new StringBuffer(1024);
char c;
int j = 0; for (int i = 0; i < str.length(); i++)
{
c = str.charAt(i);
sb.append("\\u"); j = (c >>> 8); //取出高8位
tmpStr = Integer.toHexString(j);
if (tmpStr.length() == 1)
{
sb.append("0");
}
sb.append(tmpStr); j = (c & 0xFF); //取出低8位
tmpStr = Integer.toHexString(j);
if (tmpStr.length() == 1)
{
sb.append("0");
}
sb.append(tmpStr);
} return (sb.toString());
} /*
* 把十六进制Unicode编码字符串转换为中文字符串
*/
public static String unicodeToString(String str)
{
Pattern pattern = Pattern.compile("(\\\\u(\\p{XDigit}{4}))"); Matcher matcher = pattern.matcher(str); char ch; while (matcher.find())
{
ch = (char) Integer.parseInt(matcher.group(2), 16); str = str.replace(matcher.group(1), ch + "");
} return str; } public static void main(String[] args)
{
// 0x0075 和 \u0075 是等价的
System.out.println("0x0075:" + (char) 0x0075);
System.out.println("\\u0075:" + '\u0075'); // 直接以Unicode字符串的方式初始化字符串时,会自动转换为汉子
String s1 = "\u005c\u005c\u0075\u662f\u6807\u8bc6\u0075\u006e\u0069\u0063\u006f\u0064\u0065\u7801\u7528\u7684\uff0c\u540e\u9762\u7684\u0034\u4f4d\u0031\u0036\u8fdb\u5236\u6570\u5219\u662f\u5bf9\u5e94\u5b57\u7b26\u7684\u0075\u006e\u0069\u0063\u006f\u0064\u0065\u7801";
System.out.println("s1: " + s1);// 0x0075 // 转换汉字为Unicode码
String s2 = "unicode编码简而言之就是将每一个字符用16位2进制数标识。但是通常都用4位的16进制数标识。";
s2 = UnicodeSwitchChinese.stringToUnicode(s2);
System.out.println("s2: " + s2); // 转换Unicode码为汉字
String s3 = UnicodeSwitchChinese.unicodeToString(s2); System.out.println("s3: " + s3);
}
}

unicode 编码在线转换工具

转:http://www.cnblogs.com/skykang/archive/2011/06/02/2068802.html

中文字符 与 十六进制Unicode编码 相互转换(JavaScript)

转:http://www.cnblogs.com/duanhuajian/archive/2013/04/26/3045144.html

POI:

转:https://community.oracle.com/docs/DOC-887397

转:http://blog.csdn.net/spp_1987/article/details/13770637

中文字符串转换为十六进制Unicode编码字符串的更多相关文章

  1. c# 实现获取汉字十六进制Unicode编码字符串

    1.  汉字转十六进制UNICODE编码字符串 /// <summary>        /// ////        /// </summary>        /// & ...

  2. C# 实现十六进制Unicode编码字符串转换为汉字

    网上找了几个方法,但是运行之后会报错,提示要解析的字符串格式不正确.然后我猜想可能是传入的字符串 \u60a8\u4eca\u65e5\u5df2\u7b7e\u5230 中带"\" ...

  3. python 将列表嵌套字典的unicode字符串转换为str格式的字符串的方法

    今天在进行django开发的过程中遇到了一个非常棘手的问题, 因为需求原因, 需要将一份数据存为json格式到数据库中, 如下面这种格式: list_1 = [{"name":&q ...

  4. String 字符串中含有 Unicode 编码时,转为UTF-8

    1.单纯的Unicode 转码 String a = "\u53ef\u4ee5\u6ce8\u518c"; a = new String(a.getBytes("UTF ...

  5. php urlencode函数 (中文字符转换为十六进制)

    urlencode()函数原理就是首先把中文字符转换为十六进制,然后在每个字符前面加一个标识符%. urldecode()函数与urlencode()函数原理相反,用于解码已编码的 URL 字符串,其 ...

  6. pytest文档41-参数化 ids 用例描述为中文时控制台输出unicode编码问题(pytest_collection_modifyitems)

    前言 使用 pytest.mark.parametrize 参数化的时候,加 ids 参数用例描述有中文时,在控制台输出会显示unicode编码,中文不能正常显示. 使用 pytest_collect ...

  7. Js字符串与十六进制的相互转换

    开发过程中,字符串与十六进.二进制之间的相互转换常常会用到,尤其是涉及到中文的加密时,就需要把中文转换为十六进制.下面说说具体的转换方法. 1.字符串转换为十六进制 主要使用 charCodeAt() ...

  8. Js字符串与十六进制的相互转换 【转】

    开发过程中,字符串与十六进.二进制之间的相互转换常常会用到,尤其是涉及到中文的加密时,就需要把中文转换为十六进制.下面说说具体的转换方法. 1.字符串转换为十六进制 主要使用 charCodeAt() ...

  9. Python 读取文件中unicode编码转成中文显示问题

    Python读取文件中的字符串已经是unicode编码,如:\u53eb\u6211,需要转换成中文时有两种方式 1.使用eval: eval("u"+"\'" ...

随机推荐

  1. UE4蓝图编程的第一步

    认识UE4蓝图中颜色与变量类型: UE4中各个颜色对应着不同的变量,连接点和连线的颜色都在表示此处是什么类型的变量.对于初学者来说一开始看到那么多连接点, 可能会很茫然,搞不清还怎么连,如果知道了颜色 ...

  2. echo, print, print_r

    echo 不是函数,没有返回值,因此只是用作输出的话会更快 print 和 print_r 有返回值,区别在于: print 用于打印一个字符串,print_r 可以打印一些复合类型,如: $arr= ...

  3. BZOJ 1018 线段树维护图连通性

    用8个bool维护即可分别为LURU,LURD,LDRU,LDRD,LULD,RURD,Side[1],Side[2]即可. Side表示这一块有没有接到右边.Merge一下就可以了.码农题,WA了一 ...

  4. Robot_bfs

    Description The Robot Moving Institute is using a robot in their local store to transport different ...

  5. Windows平台下PHP环境搭建

    在Windows平台上搭建PHP的开发环境可以下载WAMP(Windows.Apache.MySQL.PHP的首字母缩写)集成化安装包.这样就不需要单独安装Apache.MySQL和PHP了. 这款软 ...

  6. 0909 a newbeginning

    操作系统无意是所有计算机系各专业的基础,如果不懂这门课程的知识,大学四年计算机可以说是白读了. 这学期很荣幸能上MISSDU的操作系统,我也希望能学到关于操作系统的知识,以至于丰富自己的专业知识. 下 ...

  7. win764位Ruby2.0环境搭建之Ruby on Rails

    一:安装Ruby 1.在http://rubyinstaller.org 下载需要的ruby版本,因为是exe文件,所以,你可以直接安装. 安装结束后,cmd上运行 ruby -v 显示版本号.如果正 ...

  8. Linux覆盖率一点研究:获取覆盖率数据

     首先,当然哥不介意你鄙视我在网上找的资料研究! 白盒覆盖率是啥东东这个问题大家自己查百度啦!我也不太懂,就知道它不是个东西,就这样开始吧(MT一般是先摸四蹄呢还是先黑金币呢?这是个问题)! 首先:l ...

  9. Swift-----类型转换 、 嵌套类型 、 扩展 、 协议 、 访问控制

    使用is和as操作符判断和转换数组中的对象类型 1.1 问题 类型转换可以判断实例的类型,也可以将实例看做是其父类或者子类的实例.在Swift中使用is和as操作符实现类型转换. 本案例定义一个媒体类 ...

  10. display:inline; display:block;

    block(块级元素): div .from. p .table. pre.h1~h6. dl .ol .ul等 inline(内联元素): span.a.strong.em.label.input. ...