byte陣列與十六進製制字串互轉

2021-06-26 01:09:40 字數 2604 閱讀 1568

package maintest;

/** * @see byte陣列與十六進製制字串互轉

* @author lfc

* @date 2014-09-26

*/public class hexutil ;

/*** 用於建立十六進製制字元的輸出的大寫字元陣列

*/private static final char digits_upper = ;

/*** @see 將位元組陣列轉換為十六進製制字元陣列

* @author lfc

* @date 2014-09-26

* @param data byte

* @return 十六進製制char

*/public static char encodehex(byte data)

/*** @see 將位元組陣列轉換為十六進製制字元陣列

* @author lfc

* @date @date 2014-09-26

* @param data byte

* @param tolowercase true傳換成小寫格式 ,false傳換成大寫格式

* @return 十六進製制char

*/public static char encodehex(byte data, boolean tolowercase)

/*** @see 將位元組陣列轉換為十六進製制字元陣列

* @author lfc

* @date @date 2014-09-26

* @param data byte

* @param todigits 用於控制輸出的char

* @return 十六進製制char

*/protected static char encodehex(byte data, char todigits)

return out;

}/**

* @see 將位元組陣列轉換為十六進製制字串

* @date @date 2014-09-26

* @author lfc

* @param data byte

* @return 十六進製制string

*/public static string encodehexstr(byte data)

/*** @see 將位元組陣列轉換為十六進製制字串

* @author lfc

* @date @date 2014-09-26

* @param data byte

* @param tolowercase true 傳換成小寫格式 , false 傳換成大寫格式

* @return 十六進製制string

*/public static string encodehexstr(byte data, boolean tolowercase)

/*** @see 將位元組陣列轉換為十六進製制字串

* @author lfc

* @date @date 2014-09-26

* @param data byte

* @param todigits 用於控制輸出的char

* @return 十六進製制string

*/protected static string encodehexstr(byte data, char todigits)

/*** @see 將十六進製制字元陣列轉換為位元組陣列

* @author lfc

* @date @date 2014-09-26

* @param data 十六進製制char

* @return byte

* @throws runtimeexception 如果源十六進製制字元陣列是乙個奇怪的長度,將丟擲執行時異常

*/public static byte decodehex(char data)

byte out = new byte[len >> 1];

for (int i = 0, j = 0; j < len; i++)

return out;

}/**

* @see 將byte陣列轉換為string字串

* @author lfc

* @date @date 2014-09-26

* @param data byte陣列

* @return string 轉換後的字串

*/public static string bytetoarray(bytedata)

return result;

}/**

* @see 將十六進製制字元轉換成乙個整數

* @author lfc

* @date @date 2014-09-26

* @param ch 十六進製制char

* @param index 十六進製制字元在字元陣列中的位置

* @return 乙個整數

* @throws runtimeexception 當ch不是乙個合法的十六進製制字元時,丟擲執行時異常

*/protected static int todigit(char ch, int index)

return digit;

}}

將十六進製制字串轉為byte陣列

需求是這樣有十六進製制字串要存為byte陣列 如string st 0a000000 轉為byte後為 byte 0 10,byte 1 0,byte 2 0,byte 3 0 因.net2.0可用convert將十六進製制字串轉為byte有現成的就用吧。如下 public static byte ...

十六進製制字串轉化為byte陣列

工作上有這樣的需求之前找了好多都不行,好不容易有個可以的趕緊留下來。原址 字串轉換成十六進製制字串方法1 字串轉換成十六進製制字串 public static string str2hexstr string str return sb.tostring 十六進製制字串轉換成為陣列方法1 把16進製...

十六進製制字串和byte陣列之間的各種轉換關係

最近做專案中遇到了處理指令的問題,需要傳送十六進製制的byte和接受byte,還要用stirng 的形式展現出來。現在總結一下,加深一下記憶。將兩個ascii字元合成乙個位元組 如 ef 0xef param src0 byte param src1 byte return byte public ...