Java下 16进制 与 字符串 、整形、基本数据类型的相互转换函数



package com.nantian.iclient.atm.sdb;

public class Util {
 public Util() {
 }

 /**
  * 将指定byte数组以16进制的形式打印到控制台
  * @param hint String
  * @param b byte[]
  * @return void
  */
 public static void printHexString(String hint, byte[] b) {
   System.out.print(hint);
   for (int i = 0; i < b.length; i++) {
     String hex = Integer.toHexString(b[i] & 0xFF);
     if (hex.length() == 1) {
       hex = '0' + hex;
     }
     System.out.print(hex.toUpperCase() + " ");
   }
   System.out.println("");
 }

 /**
  *
  * @param b byte[]
  * @return String
  */
 public static String Bytes2HexString(byte[] b) {
   String ret = "";
   for (int i = 0; i < b.length; i++) {
     String hex = Integer.toHexString(b[i] & 0xFF);
     if (hex.length() == 1) {
       hex = '0' + hex;
     }
     ret += hex.toUpperCase();
   }
   return ret;
 }

 /**
  * 将两个ASCII字符合成一个字节;
  * 如:"EF"--> 0xEF
  * @param src0 byte
  * @param src1 byte
  * @return byte
  */
 public static byte uniteBytes(byte src0, byte src1) {
   byte _b0 = Byte.decode("0x" + new String(new byte[]{src0})).byteValue();
   _b0 = (byte)(_b0 << 4);
   byte _b1 = Byte.decode("0x" + new String(new byte[]{src1})).byteValue();
   byte ret = (byte)(_b0 ^ _b1);
   return ret;
 }

 /**
  * 将指定字符串src,以每两个字符分割转换为16进制形式
  * 如:"2B44EFD9" --> byte[]{0x2B, 0x44, 0xEF, 0xD9}
  * @param src String
  * @return byte[]
  */
 public static byte[] HexString2Bytes(String src){
   byte[] ret = new byte[src.length/2];
   byte[] tmp = src.getBytes();
   for(int i=0; i<src.length/2; i++){
     ret[i] = uniteBytes(tmp[i*2], tmp[i*2+1]);
   }
   return ret;
 }

}

2010-07-23 10:39

java中String\十六进制String\byte[]之间相互转换函数

http://hi.baidu.com/37018061/item/3d2ff71ed30350767b5f2595


long l =Long.parseLong(archivesId,16);//第二个参数表示进制,这里是16进制
long ltemp = Integer.parseInt(str.trim(), 16);
替换为:
long ltemp = Long.parseLong(str.trim(), 16);
new BigInteger("01040000000100000001010000005B94D910DE8F1E41ED66466", 16).toString()

Double.toHexString(double d)

你可能感兴趣的:(java,字符串,package,public,控制台)