前段时间,人人站内信改版,本来能正常显示的发信人名字,现在返回一个json串,需要解析json串以正常显示。发信人的名字以unicode编码方式存在json串中,要想正常显示发信人的名字,需要进行unicode到汉字的转换操作。
本身java 是支持unicode 编码的,所以像 str = "\u4e2d\u56fd"; 打印出来是正常的。这里要是对 str = "\\u4e2d\\u56fd"; 这种形式的unicode码进行的转换。
汉字转 unicode 可以用 Integer.toHexString(ch)。
unicode 转汉字关键的是 (char)Integer.parseInt("4e2d", 16)。
public static void testUDecode() {
//将汉字转换为十六进制Unicode表示
for (char ch : "中国".toCharArray()) {
if (ch > 128) {
System.out.print("\\u" + Integer.toHexString(ch));
} else {
System.out.print(ch);
}
}
String str = "\u4e2d\u56fd\u5b66";
System.out.println("\n"+str);//直接打印出汉字
str = "\\u5b66\\u56fd\\u5b66";
System.out.println(str);// 打印结果为\u5b66\u56fd\u5b66
//将Unicode字符串转换为汉字输出
String s[]=str.split("\\\\u");
String t="";
for(int j=1;j<s.length;j++){
int ab=Integer.valueOf(s[j],16);//先将16进制转换为整数
char ac=(char)ab;//再将整数转换为字符
System.out.println(ac);
t=t+ac;
}
System.out.println("t:"+t);
char a=20320;
int b=(int)a;
System.out.println(a+","+b);
}
输出结果为:
\u4e2d\u56fd
中国学
\u5b66\u56fd\u5b66
学
国
学
t:学国学
你,20320
分享到:
相关推荐
ANSI字符串和Unicode字符串是两种常见的字符编码方式,它们各自有其特点和应用场景。本篇文章将详细探讨ANSI字符串与Unicode字符串的相互转换及其重要性。 首先,我们要理解ANSI字符串的概念。ANSI字符串实际上是一...
在编程世界中,字符编码是基础且至关重要的概念,尤其是Unicode和字符串的处理。...了解如何正确处理Unicode字符串,以及在各种编程语言中操作字符串的方法,将有助于开发出更健壮、更国际化的产品。
在C#中,Unicode是默认的字符串编码格式,这意味着每个字符串实例都是一个Unicode字符串。 “Unicode转中文”是指将Unicode编码的字符串转换为中文字符显示。在C#中,这通常是透明的,因为C#的String类内部使用UTF-...
UnicodeCode编码转换成字符串编码的C#类 \uA054\uA055 => "中文
C++实现中英文与UNICODE十六进制字符串互转 实现 "中文English" --> "4e2d65870045006e0067006c006900730068" 和 "4e2d65870045006e0067006c006900730068" --> "中文English" 这么一个转换,上述的都是字符...
在FASM中,处理Unicode字符串,特别是中文字符串,可能会有一些特殊的要求。本文将详细讨论如何在FASM中使用宏来支持中文UNICODE字符串的定义。 首先,我们需要理解Unicode和UTF-16的关系。Unicode是一个字符集,...
1. 字符串到Unicode:将普通字符串(可能是AnsiString)按照特定的编码(如UTF-8)转换成Unicode编码(UTF-16)。 2. Unicode到字符串:将Unicode编码(UTF-16)转换回指定编码格式的字符串(如UTF-8后的AnsiString...
3. **拆分字符串**:LabVIEW中的“拆分字符串”节点允许用户根据特定的分隔符将一个字符串分割成多个子字符串。对于中文字符串,确保分隔符也符合宽字符串标准,以避免拆分错误。 4. **编码格式**:中文字符的正确...
其中,短信服务(SMS)中的文本信息可能包含Unicode字符,比如中文、日文、韩文或其他非英文字符。由于AT命令通常只支持ASCII编码,因此在处理Unicode短信时,我们需要将Unicode编码转换为ASCII可识别的形式,或者...
在LabVIEW中处理字符串是一项常见的任务,尤其是将一个字符串拆分成多个子字符串,这通常涉及到字符串的分割操作。本篇将详细介绍如何在LabVIEW中实现“字符串拆分到数组”并支持中文字符。 一、字符串拆分的基本...
GBK编码的字符串转换为Unicode字符串的过程,通常涉及以下几个步骤: 1. 首先,读取GBK编码的字节流。 2. 使用GBK解码器将GBK编码的字节解码为字符。这一步会得到一个基于GBK编码的字符序列。 3. 将GBK编码的字符...
例如,在JavaScript中,可以使用`decodeURI()`或`decodeURIComponent()`函数解码Unicode字符串;在Python中,可以使用`str.encode('utf-8')`将Unicode字符串编码为UTF-8。 在处理网页内容时,确保正确的字符编码...
汇编语言中定义字符串形如: szText byte '这不是一颗流星',0 在程序中这个字符串的是...masm32软件包中的ucmacros.asm中有两个定义Unicode字符串的宏,但却不支持汉字。此文件中的WSTR和UText两个宏弥补了这个不足。
Unicode 字符串是一种更为通用的编码方式,每个字符(汉字、英文字母)都占用两个字节,以两个连续的`\0`结尾。 NT 操作系统内核使用的是这种字符串,常被定义为 `typedef unsigned short wchar_t;`。 Unicode 字符...
总结来说,处理Delphi中的中文和英文混合字符串截取,关键在于理解Unicode字符串的特性,正确选择和使用字符串截取函数,并在必要时进行字节对齐和编码转换。通过这样的方式,我们可以确保在处理多语言文本时不会...
然而,我们可以通过使用WideString类型来处理Unicode字符串,其中每个字符都占用2个字节,无论是否为英文或中文。 接下来,我们可以编写一个名为`GetChineseStringLength`的函数,该函数接受一个字符串参数,返回该...
将字符串中的中文做UNICODE转码,非中文忽略 简单实用 封装好了 直接用即可
本工具专注于ANSI和UNICODE字符串与十六进制之间的转换,这涉及到字符编码和二进制数据的理解。 首先,我们要理解ANSI和UNICODE的概念。ANSI字符串通常指的是基于特定地区或语言的ASCII编码,它使用7位或8位来表示...
标题 "替换文件字符串 utf8 unicode ansi" 涉及的核心知识点主要集中在字符编码和文本处理上。在计算机科学中,字符编码是用来表示文本的数字系统,不同的编码标准有着不同的特性与适用场景。 1. **Unicode**:...
1. **中文符号**:如果需要判断字符串中是否包含中文符号,可以使用更广泛的Unicode范围,例如`[\u3002\uff1b\uff0c\uff1a\u201c\u201d\u2018\u2019]`等。 2. **特殊字符处理**:在实际应用中,还需要考虑到特殊字符...