`

汉字转16进制方法

阅读更多
package com.chen.util;

import java.io.UnsupportedEncodingException;

public class Util {
	
	

public static void main(String args[]){
	String gbk16 = convertStringToUTF8("今天天气真好","UTF-8");
	System.out.println( gbk16);
	System.out.println(convertUTF8ToString(gbk16,"UTF-8"));
//	BDF1CCECCCECC6F8D5E6BAC3
}



	/**
	 * UTF-8编码 转换为对应的 汉字
	 * 
	 * URLEncoder.encode("上海", "UTF-8") ---> %E4%B8%8A%E6%B5%B7
	 * URLDecoder.decode("%E4%B8%8A%E6%B5%B7", "UTF-8") --> 上 海
	 * 
	 * convertUTF8ToString("E4B88AE6B5B7")
	 * E4B88AE6B5B7 --> 上海
	 * 
	 * @param s 		字符串
	 * @param Encoder	编码格式
	 * @return
	 */
	public static String convertUTF8ToString(String s,String Encoder) {
		if (s == null || s.equals("")) {
			return null;
		}
		
		try {
			s = s.toUpperCase();

			int total = s.length() / 2;
			int pos = 0;

			byte[] buffer = new byte[total];
			for (int i = 0; i < total; i++) {

				int start = i * 2;

				buffer[i] = (byte) Integer.parseInt(
						s.substring(start, start + 2), 16);
				pos++;
			}

			return new String(buffer, 0, pos, Encoder);
			
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		return s;
	}

	/**
	 * 将文件名中的汉字转为UTF8编码的串,以便下载时能正确显示另存的文件名.
	 * 
	 * @param s	原串
	 * @param Encoder	编码格式
	 * @return
	 */
	public static String convertStringToUTF8(String s,String Encoder) {
		if (s == null || s.equals("")) {
			return null;
		}
		StringBuffer sb = new StringBuffer();
		try {
			char c;
			for (int i = 0; i < s.length(); i++) {
				c = s.charAt(i);
				if (c >= 0 && c <= 255) {
					sb.append(c);
				} else {
					byte[] b;

					b = Character.toString(c).getBytes(Encoder);

					for (int j = 0; j < b.length; j++) {
						int k = b[j];
						if (k < 0)
							k += 256;
						sb.append(Integer.toHexString(k).toUpperCase());
						// sb.append("%" +Integer.toHexString(k).toUpperCase());
					}
				}
			}
		} catch (Exception e) {
			e.printStackTrace();

		}
		return sb.toString();
	}
}

 

代码如下

 

 

分享到:
评论

相关推荐

    汉字转16进制工具

    汉字转16进制工具是一种专门用于将汉字字符转换成16进制表示形式的软件。在计算机科学中,字符编码是至关重要的,因为它允许计算机理解和处理文本信息。汉字作为非ASCII字符,其编码通常采用Unicode,如GBK或UTF-8等...

    汉字转换16进制

    标题中的“汉字转换16进制”涉及到计算机编程中字符编码和数值表示的知识。在计算机系统中,汉字通常由特定的编码方式表示,如GBK、UTF-8等。16进制是数字的一种表示方式,它使用0到9以及A到F这16个符号来表示从0到...

    汉字转16进制的工具

    总的来说,这个工具提供了一种便捷的方法来探索汉字在计算机世界中的表示,通过16进制这一桥梁,加深了对字符编码的理解。无论是为了学习还是实际应用,这样的工具都具有很高的价值。在实际的IT工作中,了解字符编码...

    中文转16进制

    "中文转16进制"这个话题涉及到字符编码、字节序列以及16进制数字系统。 首先,我们需要了解中文字符的编码方式。在计算机中,中文字符通常使用Unicode编码,最常见的是UTF-8编码。UTF-8是一种变长的字符编码,它...

    汉字转换成16进制

    汉字转换成16进制

    Delphi源码 - 汉字转16进制编码

    了解并掌握这种汉字转16进制编码的工具,对于在斯凯平台上开发涉及到汉字编码处理的应用程序是非常有价值的,可以帮助开发者更好地理解和处理汉字在不同环境下的编码问题。同时,这也是对Unicode和16进制编码基础...

    汉字转换成16进制,16进制转换成汉字

    总之,汉字与16进制之间的转换是计算机处理中文字符的基础步骤,理解和掌握这些转换方法对IT从业者来说至关重要。无论是手动编写代码还是使用专业工具,都能帮助我们更好地处理汉字数据,提高工作效率。

    汉字转16进制和16进制转汉字

    一、汉字转16进制 1. 字符编码理解:首先,我们要了解汉字在不同编码标准下的表示方式。例如,GBK编码中,一个汉字通常由两个字节组成;而在UTF-8编码中,汉字可能由三到四个字节不等。16进制转换是基于这些字节的...

    汉字转换16进制表达(源码)

    在提供的压缩包中,"16进制转汉字"和"汉字转16进制"的源码文件可能包含了具体的实现细节。这些源码文件可能包含两个独立的函数或方法,分别执行上述两种转换。通过阅读和理解这些源码,开发者可以学习到如何在实际...

    UTF8转16进制工具 Utf8ToHex

    例如,“你好”这两个汉字在UTF-8中分别占用3个字节,用16进制表示就是"\xE4\xBD\xA0"和"\xE5\xA5\xBD"。 16进制(Hexadecimal)是计算机中常用的数值表示方式,它使用16个符号(0-9和A-F)来表示数值。每个16进制...

    汉字16进制互转

    "汉字16进制互转"是针对这一需求而设计的一种技术方法,尤其在Unicode编码环境中尤为重要。本文将详细讲解汉字与16进制之间的转换原理以及在Visual Studio 2008 (VS2008)环境下如何实现此类转换。 首先,我们需要...

    串口调试助手.zip_gb2312转16进制_串口 文件_串口 时间戳_串口时间戳_串口调试

    16进制显示,勾选后将显示16进制的字节,如果之前接收到了数据,会自动转换. ...支持16进制发送,勾选16进制发送的时候将对发送区的内容进行16进制和字符互转 发送换行勾选后,每次发送数据时会自动添加”\r\n”.

    易语言文本和16进制相互转换工具

    2. 16进制转文本:使用“十六进制到整数”函数(HexToInteger)将16进制字符串转换为整数,然后根据整数值查找对应的字符。需要注意的是,处理多字节字符时,可能需要考虑字节顺序问题。 四、源码解析 在“易语言...

    安卓汉字与16进制互转demo

    这个“安卓汉字与16进制互转demo”正是为了解决这样的问题而创建的。在本篇文章中,我们将深入探讨汉字与16进制之间的转换原理,并基于描述中的“经过修改后得到正确转化结果”的提示,解析这个转换过程的关键步骤。...

    汉字转16进制

    汉字转16进制,准确,方便,快捷,体积小,总之是个不错的小软件。

    android汉字转16进制.rar

    public String汉字转16进制(String汉字) { try { byte[] bytes = 汉字.getBytes("UTF-8"); StringBuilder hexString = new StringBuilder(); for (byte b : bytes) { hexString.append(String.format("%02X", ...

    中文文本转换成16进制十进制二进制软件

    "中文转16进制.exe"这样的软件工具简化了这些转换操作,用户只需输入中文文本,就能快速得到16进制、十进制或二进制的结果。这些工具在编程、数据分析和软件开发等场景中具有很高的实用性,使得技术人员能够更高效地...

    汉字中文十六进制显示转换

    本文将深入探讨“汉字中文十六进制显示转换”的相关知识点。 首先,我们要了解汉字与计算机之间的关系。汉字是一种复杂字符,早期的计算机系统主要支持英文字符,如ASCII码,无法直接处理汉字。随着Unicode的出现,...

    中文转换成十六进制编码

    十六进制编码是一种将字符转换为数字表示的方法,尤其在处理非ASCII字符集(如中文)时非常有用。本文将详细介绍如何将中文字符转换成十六进制编码,并通过一个简单的步骤进行演示。 中文字符集主要有GB2312、GBK、...

    C#从16进制转换成汉字

    在处理与字符编码相关的任务时,例如Unicode编码,可能会涉及到将16进制值转换为汉字。Unicode是一个包含世界上大部分字符的编码标准,每个字符都有一个唯一的16或32位的数字表示,通常以16进制的形式给出。 在C#中...

Global site tag (gtag.js) - Google Analytics