`
carver
  • 浏览: 50257 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

把Unicode转换为原始字符的方法

    博客分类:
  • Java
 
阅读更多

支持任何Unicode字符串的转换。

 

源代码:

 

private static final Pattern REG_UNICODE = Pattern.compile("[0-9A-Fa-f]{4}");

public static String unicode2String(String str) {
	StringBuilder sb = new StringBuilder();
	int len = str.length();
	for (int i = 0; i < len; i++) {
		char c1 = str.charAt(i);
		if (c1 == '\\' && i < len - 1) {
			char c2 = str.charAt(++i);
			if (c2 == 'u' && i <= len - 5) {
				String tmp = str.substring(i + 1, i + 5);
				Matcher matcher = REG_UNICODE.matcher(tmp);
				if (matcher.find()) {
					sb.append((char) Integer.parseInt(tmp, 16));
					i = i + 4;
				} else {
					sb.append(c1).append(c2);
				}
			} else {
				sb.append(c1).append(c2);
			}
		} else {
			sb.append(c1);
		}
	}
	return sb.toString();
}
 

 

测试用例:

 

String unicode = "\\u672\\u6728gfs\\u5B50\\u96C5\\u4F26lxl";
String result = unicode2String(unicode);
Assert.assertEquals("\\u672木gfs子雅伦lxl", result);

 

 

String unicode = "\\u6728\\u5B50\\u96C5\\u4F26";
String result = unicode2String(unicode);
Assert.assertEquals("木子雅伦", result);

 

分享到:
评论

相关推荐

    C#字串与Unicode互相转换方法

    2. **字符数组转换**:将原始字符串 `srcText` 转换为字符数组 `src`。 3. **遍历字符数组**:使用 for 循环遍历字符数组中的每一个字符。 4. **获取 Unicode 编码**:对于每个字符,利用 `Encoding.Unicode....

    中文转化为unicode格式的方法类

    1. **`public String toUnicodeString(String chineseStr)`**:此方法接收一个中文字符串,然后将其转换为 Unicode 字符串形式,每个字符用 `\u` 开头,后面跟随四位十六进制数字表示其码点。例如,"你好" 变为 `\u4...

    C语言字符编码转换UNICODE、GBK、UTF-8互相转换

    3. **转换**:在Unicode字符数组中,你可以直接进行转换,因为UNICODE是统一的编码标准,可以作为中间格式。例如,从GBK转到UTF-8,只需将GBK的宽字符转换为对应的UTF-8字节序列。 4. **编码**:将Unicode字符数组...

    字符串十六进制转换工具(包含ANSI和UNICODE)

    在接收到十六进制数据后,再将其还原为原始字符串。此外,这个工具对于查看或分析二进制文件的内容也非常有用,因为它允许我们将难以直接读取的二进制数据转化为可读的字符串形式。 总之,"字符串十六进制转换工具...

    java实现十六进制字符unicode与中英文转换示例

    `substring`方法用于从原始字符串中提取出每两个字符(一个字节的十六进制表示),并使用`Integer.parseInt`将其转换为十进制整数,进而得到原始字节。 在处理编码问题时,了解不同编码格式的特点和差异至关重要。...

    ANSI字符串与Unicode字符串的相互转换

    例如,从ANSI字符串转换为Unicode字符串时,需要知道源字符串的代码页,以便正确地解析多字节序列。反之,转换回ANSI时,也需要指定目标代码页。 3. **内存管理**:在转换过程中,需要分配足够的内存来存储目标字符...

    Unicode转换器

    Unicode转换器是一款便捷实用的工具,专为处理和转换Unicode编码至汉字而设计。Unicode是一种国际标准字符编码,它能够表示世界上几乎所有的文字系统,包括汉字。在信息技术领域,Unicode的使用至关重要,因为它确保...

    解决无法在unicode和非unicode字符串数据类型之间转换的方法详解

    首先,读取数据到程序内存中,将Unicode字符串转换为非Unicode字符串(或反之),然后再执行`INSERT INTO`语句。这种方法适用于数据量较小或需要动态处理的情况,但可能会增加应用程序的复杂性。 在进行转换时,还...

    易语言UNICODE转换源码

    此压缩包中的"易语言UNICODE转换源码"很可能包含了一组用于处理字符串编码转换的源代码,可能是用于将易语言内部的字符编码格式转换为UNICODE格式,或者反之。在实际开发中,这样的工具或函数库可以用来解决字符集不...

    ASCII & Unicode 转换工具 v2.3.3

    《ASCII与Unicode转换工具v2.3.3详解》 在计算机世界中,字符编码扮演着至关重要的角色,它使得计算机能理解和处理人类语言。ASCII和Unicode是两种广泛使用的字符编码标准,它们各自有着独特的特点和应用场景。...

    游戏通用Unicode编码转换

    如果不进行适当的转换,这些文本在不支持其原始编码的系统上可能会显示为乱码。 2. **资源文件编码**: 游戏的文本资源(如剧情对话、菜单选项)通常存储在文件中,这些文件可能使用特定的编码。为了在游戏中正确...

    16进制ascii码Unicode转换工具

    标题中的“16进制ascii码Unicode转换工具”是指一种软件或在线服务,它能够帮助用户将16进制表示的ASCII编码转换为Unicode编码,反之亦然。这个工具的独特之处在于它支持同步输入和批量转换,使得处理大量数据变得...

    汉字与unicode转换工具

    总的来说,汉字与Unicode转换工具的目的是帮助开发者和用户在不同编码系统之间进行有效的数据交换和处理,确保汉字信息的准确无误。这样的工具通常会提供接口或者命令行选项,允许用户选择输入和输出的编码格式,...

    日语SJIS和Unicode的转换

    在IT行业中,字符编码是处理文本数据的基础,尤其是在涉及到多语言环境时,如我们的主题——日语SJIS(Shift-JIS)与Unicode之间的转换。Unicode是一种全球通用的字符集,包含世界上几乎所有的文字,而SJIS是日本...

    Unicode字符查询器

    在信息技术领域,Unicode是一个重要的标准化编码系统,它的目标是为世界上所有的字符提供一个唯一的数字标识,以促进跨语言、跨平台的信息处理。Unicode字符查询器的出现,使得开发者、文本编辑者以及普通用户能够...

    UNICODE转换.rar

    Unicode转换涉及到将文本数据从一种编码格式转换为Unicode格式,或者从Unicode转换为其他编码格式。这是因为不同的操作系统、编程语言或网络协议可能支持不同的字符编码。例如,Windows系统常用GBK编码,而网页则...

    Unicode 字符集转换

    综上所述,Unicode字符集转换是计算机处理多语言文本时的关键技术,理解和掌握其原理及实践方法,对于开发者来说至关重要。无论是软件开发、数据交换还是国际化应用,Unicode的使用都能带来极大的便利性和兼容性。

    Java做的Unicode编码转换器

    Java编写的Unicode编码转换器是一种实用工具,它能够帮助用户将各种国家和地区的文字转换成Unicode编码,同时也能实现从Unicode编码回转到原始字符。Unicode是一种国际标准,旨在为全球所有的字符提供一个统一的编码...

    字符串与Unicode互转工具

    例如,从AnsiString转换到UnicodeString时,需要知道原始字符串的编码,反之亦然。 在“字符串与Unicode互转工具”中,可能包含以下功能: 1. 字符串到Unicode:将普通字符串(可能是AnsiString)按照特定的编码...

    c语言利用编码转换表实现gbk与unicode互转

    - 实现:遍历输入字节序列,每两个字节组合成一个GBK编码,然后查找转换表,得到对应的Unicode值,将其转换为宽字符存储。 2. `Unicode_to_GBK` 函数: - 输入:一个Unicode编码的宽字符序列。 - 输出:对应的...

Global site tag (gtag.js) - Google Analytics