解析类似 %u641c%u72d0 的编码。因为Java中的 char 类型采用的就是Unicode编码, 因此将其中的16进制数先读取成int型,再转成char类型就可以了。
import java.util.ArrayList;
public class UnicodeDecoder {
public static String decode(String codes) {
ArrayList<String> code_list = new ArrayList<String>();
StringBuffer period = new StringBuffer();
codes = codes.substring(1);
codes += '%';
for (int i = 0; i < codes.length(); i++) { // 拆分字符
if (codes.charAt(i) == '%' && period.length() != 0) {
code_list.add(period.toString());
period = new StringBuffer();
} else {
period.append(codes.charAt(i));
}
}
StringBuffer result = new StringBuffer();
for (String code : code_list) { // 逐个转换
result.append((char) Integer.valueOf(code.substring(1), 16).intValue());
}
return result.toString();
}
}
public class UnicodeDecoder {
public static String decode(String codes) {
ArrayList<String> code_list = new ArrayList<String>();
StringBuffer period = new StringBuffer();
codes = codes.substring(1);
codes += '%';
for (int i = 0; i < codes.length(); i++) { // 拆分字符
if (codes.charAt(i) == '%' && period.length() != 0) {
code_list.add(period.toString());
period = new StringBuffer();
} else {
period.append(codes.charAt(i));
}
}
StringBuffer result = new StringBuffer();
for (String code : code_list) { // 逐个转换
result.append((char) Integer.valueOf(code.substring(1), 16).intValue());
}
return result.toString();
}
}
使用时,UnicodeDecoder.decode("%u641c%u72d0") 即可得到编码对应的内容。
转载:http://gaofeihang.blog.163.com/blog/static/84508285201031242737966/
相关推荐
在给定的文件中,虽然部分内容难以直接解析为明确的IT知识,但通过其标题“常用的java汉字unicode编码”以及描述“该文档有常用的java汉字unicode编码”,我们可以深入探讨与之相关的知识点。 ### Unicode编码的...
总的来说,Java提供了丰富的API来处理Unicode编码,无论是转换中文字符还是从Unicode码点恢复字符,都可以轻松实现。在处理多语言文本时,理解和熟练运用Unicode编码是至关重要的。通过上述方法,你可以有效地在Java...
描述中的“反编译后的汉字unicode显示格式转换为字符格式的代码”意味着在反编译过程中,可能会遇到汉字以Unicode编码形式出现,这通常是由于Java字节码中存储字符串的方式决定的。Unicode编码虽然通用,但在直接...
Java编写的Unicode编码转换器是一种实用工具,它能够帮助用户将各种国家和地区的文字转换成Unicode编码,同时也能实现从Unicode编码回转到原始字符。Unicode是一种国际标准,旨在为全球所有的字符提供一个统一的编码...
这是因为DXF文件默认可能不使用Unicode编码,而Java标准输入输出流通常以UTF-8为默认编码。为了解决这个问题,我们需要在读取文件时指定正确的编码,例如GBK或GB2312,这取决于DXF文件的源编码。例如: ```java ...
标签“源码”暗示了这个话题可能涉及到编程和代码实现,可能讲解了如何在编程语言中使用Unicode编码来处理中文字符,例如Java、Python或C++。而“工具”标签则可能意味着存在某种工具或库,可以帮助开发者进行...
#### Unicode编码示例解析 - **示例1**:“的”(`\u7684`)— 这个例子展示了如何用Unicode编码表示“的”字。 - **示例2**:“一”(`\u4e00`)— “一”是最简单的汉字之一,其Unicode编码为`\u4e00`。 - **示例...
当一个网页的字符集设定为UTF-8时,浏览器就能正确解析包含中文的Unicode编码,显示页面上的中文内容。如果不正确设置编码,可能会导致乱码现象,影响用户体验。开发者可以通过在HTML文档的头部添加`...
3. **处理BOM头**:某些Unicode编码(如UTF-8、UTF-16)可能包含字节顺序标记(BOM),在读取前需要检测并去除BOM,以防止解析错误。 4. **使用第三方库**:如果Java标准库无法满足需求,可以考虑使用开源库,如...
总之,Unicode编码转换源码是关于在不同编码体系之间进行转换的程序,涉及Unicode码点和各种编码格式如UTF-8的交互。掌握这一技术有助于实现跨平台、跨语言的信息交换,对于构建全球化软件至关重要。通过深入理解...
在中文环境下,常用的Unicode编码方案有GB2312、GBK和UTF-8等,其中UTF-8是目前最广泛使用的编码格式,它是一种变长编码,可以高效地存储英文和中文混合的文本。 中文与ASC码、Unicode码之间的转换通常需要特定的...
总而言之,Java解析PHP函数json_encode生成的JSON字符串时,需要注意unicode编码和UTF-8编码的正确使用。通过编写专门的解码方法或使用现成的JSON库,可以有效解决编码问题,确保数据在客户端和服务器之间的正确解析...
在Java编程语言中,处理Emoji可能会涉及到Unicode编码、字体映射以及平台特定的实现。Java Emoji Converter提供了一个统一的接口,允许开发者将一个格式的Emoji字符串转化为另一种格式,确保在各种环境中都能正确...
在IT领域,Unicode编码是一种广泛使用的字符编码标准,它旨在为全球所有语言提供一个统一的字符集。...理解Unicode编码原理,掌握Java的字符编码和文件操作技术,对于开发高效、可靠的Web应用至关重要。
通过解析Unicode编码字符串中的`\u`后跟四位十六进制数字的形式,可以将Unicode编码还原为原始的字符串。 ```java public static String unicodeToString(String str) { Pattern pattern = Pattern.compile("(\\\\...
*在java代码中的使用如下: * 1、加密:Base64.encodeToString(vo.getText().getBytes("unicode")) * 2、解密:String keywords =new String(Base64.decode(keywords),"unicode"); *本JS使用方法如下: * 1、调用...
“Unicode码转换工具”是指用于处理Unicode编码的软件或程序,它能够帮助用户在不同的字符编码之间进行转换,确保不同系统或语言环境下的文本数据能够正确无误地显示和交换。Unicode是一种国际标准,它为世界上几乎...
1. **Unicode编码**:Unicode支持多种编码方式,其中最常见的是UTF-8、UTF-16和UTF-32。UTF-8是最广泛使用的,它使用1到4个字节来表示一个字符,对于ASCII字符,UTF-8编码与ASCII相同。UTF-16通常使用2个字节,但...
假设我们要将一段文本从GB2312编码转换为Unicode编码,首先需要准备一个完整的映射表,该映射表包含了所有GB2312编码与Unicode编码之间的对应关系。接着,可以编写一个程序来读取这段文本,并按照上述流程进行转换。...