16进制转中文,16进制转数字

原创 2015年07月10日 10:54:51

二话不说 ,直接上代码

import java.math.BigInteger;

public class Util {
/**
 * 16进制转中文(GBK)
 * @param s
 * @return
 */
	public static String hexToStringGBK(String s) {
		byte[] baKeyword = new byte[s.length() / 2];
		for (int i = 0; i < baKeyword.length; i++) {
			try {
				baKeyword[i] = (byte) (0xff & Integer.parseInt(s.substring(i * 2, i * 2 + 2), 16));
			} catch (Exception e) {
				e.printStackTrace();
				return "";
			}
		}
		try {
			s = new String(baKeyword, "GBK");// UTF-16le:Not
		} catch (Exception e1) {
			e1.printStackTrace();
			return "";
		}
		return s;
	}
	
	/**
	 * 16进制转中文(utf-8)
	 * @param s
	 * @return
	 */
	public static String toStringHex(String s) {
		byte[] baKeyword = new byte[s.length() / 2];
		for (int i = 0; i < baKeyword.length; i++) {
			try {
				baKeyword[i] = (byte) (0xff & Integer.parseInt(s.substring(i * 2, i * 2 + 2), 16));
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		try {
			s = new String(baKeyword, "utf-8");// UTF-16le:Not
		} catch (Exception e1) {
			e1.printStackTrace();
		}
		return s;
	}
	
	/**
	 * 高字节在前,低字节在后(先转换)
	 * 例如 9D58B9FE82 首先转换成  82FEB9589D
	 * @param s
	 * @return
	 */
	public static String longToHexString (String s){
		Long c = Long.parseLong(s.substring(0, 8), 16);
		Long res = 0l;
		
		res |= (c & 0x000000ff) << 24;
		res |= (c & 0x0000ff00) << 8;
		res |= (c & 0x00ff0000) >> 8;
		res |= (int)((c & 0xff000000) >> 24);
		
		s = new BigInteger(Long.toHexString(res), 16).toString();
		
		return s;
	}
	
	
	public static void main(String[] args) {
		
	}
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

Android中汉字和16进制数的转化

//汉字转化为16进制 String strInput ="湖北武汉"; StringBuffer output = new StringBuffer(); System.out.println...
  • scong123
  • scong123
  • 2016年12月08日 13:06
  • 491

十六进制字符串转中文

16进制转中文字符串
  • sinat_33338482
  • sinat_33338482
  • 2017年04月26日 15:34
  • 619

JAVA--长整数与16进制字符串互相转换

一般情况下,我们在对java中10进制与16进制互相转换的时候,通常是采用下列方法(以long类型为例): 10进制化为16进制:String Long.toHexString(Long v);...
  • e_wsq
  • e_wsq
  • 2015年04月28日 12:21
  • 9502

java实现汉字转unicode与汉字转16进制实例

本文实例讲述了java实现汉字转unicode与汉字转16进制的实现方法。分享给大家供大家参考。具体实现方法如下: 一、汉字转unicode public static String toUni...
  • Scropiooo
  • Scropiooo
  • 2017年01月11日 17:33
  • 1016

如何将16进制转化成汉字

国标码是一个四位十六进制数,每个国标码都对应着一个唯一的汉字或符号 国标编码就是中华人民共和国信息交换汉字编码标准(GB2312-80), 在此标准中制定了每一个汉字及非汉字符号的编码。规定将汉字...
  • cao478208248
  • cao478208248
  • 2014年04月07日 08:25
  • 4396

c++ 中文和十六进制的互转

CString CHexAndStrDlg::StrToHex(CString strData) { //初始化 CString strTemp =""; int iLenth = strDa...
  • wangtiewei
  • wangtiewei
  • 2016年12月07日 21:10
  • 1729

c语言字符串转换为16进制和10进制数字

字符串转换为16进制或者10进制:1、使用自己编写的函数。2、使用库函数。 将字符串转换为16进制两种方法的代码: #include #include #include  int H...
  • mt6246
  • mt6246
  • 2015年11月18日 19:06
  • 2649

16进制和字符串(包括中文)的转换

package com.util.encode; import java.io.ByteArrayOutputStream; /**  * Description  字符串(包含中文)和...
  • haoJihw
  • haoJihw
  • 2014年06月02日 22:47
  • 5642

Java中文和字母与16进制ASCII码的转换

没事儿看了看这个,写俩方法方便以后用
  • Coco_Wonderful
  • Coco_Wonderful
  • 2014年07月14日 14:34
  • 3473

Oracle - 利用自带函数进行16进制与字符互转

在查看Apache log时,经常在url里面混杂着%3A,%2F等字符,究竟代表什么?只需通过Oracle自带函数转换下就可。根据16进制查字符:select chr(to_number('2F',...
  • t0nsha
  • t0nsha
  • 2012年11月22日 22:04
  • 8854
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:16进制转中文,16进制转数字
举报原因:
原因补充:

(最多只允许输入30个字)