導航:首頁 > 編程語言 > java十六進制byte

java十六進制byte

發布時間:2022-08-26 20:46:13

1. java中將16進制字元串轉換byte數組

為什麼你中間要專門寫這個 ,(byte)0xFF,(byte)0xFF,
這兩個數字有啥特別的么

2. java byte轉16進制

//將指定byte數組以16進制的形式列印到控制台
public
static
void
printHexString(
byte[]
b)
{
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()
);
}
}

3. java中如何將byte[]裡面的數據轉換成十六進制

/* *
* Convert byte[] to hex string.這里我們可以將byte轉換成int,然後利用Integer.toHexString(int)
*來轉換成16進制字元串。
* @param src byte[] data
* @return hex string
*/
public static String bytesToHexString(byte[] src){
StringBuilder stringBuilder = new StringBuilder("");
if (src == null || src.length <= 0) {
return null;
}
for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
此方法能將byte[]轉化成16進制字元串,希望能幫到你。

4. JAVA中有多個十六進制字元串轉成Byte數組,有什麼方法

給你如下兩個方法,你可以試試:

publicstaticbyteuniteBytes(bytestr0,bytestr1){
byte_b0=Byte.decode("0x"+newString(newbyte[]{str0})).byteValue();
_b0=(byte)(_b0<<4);
byte_b1=Byte.decode("0x"+newString(newbyte[]{str1})).byteValue();
byteret=(byte)(_b0^_b1);
returnret;
}
publicstaticbyte[]HexString2Bytes(Stringstr){
byte[]ret=newbyte[str.length()/2];
byte[]tmp=str.getBytes();
for(inti=0;i<str.length()/2;i++){
ret[i]=uniteBytes(tmp[i*2],tmp[i*2+1]);
}
returnret;
}

demo:
Stringstr="1A543C3265C133D23F416E21"
byte[]by=HexString2Bytes(str);

5. java byte,二進制,16進制

看樣子,是4個8位。。。。。
有用的是前面2個8位。。。。。

(byte[3] & 0x4) == 4 ? 0 : 1 設置第4位

6. java把16進制的字元串裝換成16進制形式的byte數組

public static void main(String[] args) {
String[] s = "0X0C|0X03|0X00|0X04|0X00|0X02|0X84|0XD7".split("|");
Map<String,Object> map = new HashMap<String,Object>();
for (int i = 0; i < s.length; i++) {
System.out.println(s[i].getBytes());
map.put(s[i], s[i].getBytes());
}
}
?不太明白意思 轉成16進制,做什麼?

7. java byte 怎麼表示16進制

* Convert byte[] to hex string.這里我們可以將byte轉換成int,然後利用Integer.toHexString(int)來轉換成16進制字元串。
* @param src byte[] data
* @return hex string
*/
public static String bytesToHexString(byte[] src){
StringBuilder stringBuilder = new StringBuilder("");
if (src == null || src.length <= 0) {
return null;
}
for (int i = 0; i < src.length; i++) {
int v = src[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
/**
* Convert hex string to byte[]
* @param hexString the hex string
* @return byte[]
*/
public static byte[] hexStringToBytes(String hexString) {
if (hexString == null || hexString.equals("")) {
return null;
}
hexString = hexString.toUpperCase();
int length = hexString.length() / 2;
char[] hexChars = hexString.toCharArray();
byte[] d = new byte[length];
for (int i = 0; i < length; i++) {
int pos = i * 2;
d[i] = (byte) (charToByte(hexChars[pos]) << 4 | charToByte(hexChars[pos + 1]));
}
return d;
}
/**
* Convert char to byte
* @param c char
* @return byte
*/
private byte charToByte(char c) {
return (byte) "0123456789ABCDEF".indexOf(c);
}

8. java中如何將byte[]裡面的數據轉換成十六進制

方法如下:

/* *

* Convert byte[] to hex string.這里我們可以將byte轉換成int,然後利用Integer.toHexString(int)

*來轉換成16進制字元串。

* @param src byte[] data

* @return hex string

*/

public static String bytesToHexString(byte[] src){

StringBuilder stringBuilder = new StringBuilder("");

if (src == null || src.length <= 0) {

return null;

}

for (int i = 0; i < src.length; i++) {

int v = src[i] & 0xFF;

String hv = Integer.toHexString(v);

if (hv.length() < 2) {

stringBuilder.append(0);

}

stringBuilder.append(hv);

}

return stringBuilder.toString();

}

此方法能將byte[]轉化成16進制字元串,

9. 在java中將16進制轉化為byte類型,再將byte類型轉換回來,請大神解答急

public class HexCodec {
private static final char[] kDigits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a',
'b', 'c', 'd', 'e', 'f' };

public static byte[] hexToBytes(char[] hex) {
int length = hex.length / 2;
byte[] raw = new byte[length];
for (int i = 0; i < length; i++) {
int high = Character.digit(hex[i * 2], 16);
int low = Character.digit(hex[i * 2 + 1], 16);
int value = (high << 4) | low;
if (value > 127)
value -= 256;
raw[i] = (byte) value;
}
return raw;
}

public static byte[] hexToBytes(String hex) {
return hexToBytes(hex.toCharArray());
}
}

public static String toHex(byte b){
return (""+"0123456789ABCDEF".charAt(0xf&b>>4)+"0123456789ABCDEF".charAt(b&0xf));
}

10. Java:轉16進制時常見的【byte[i] & 0xFF】是什麼意思呢

int v ; 這里不論你賦值給v什麼值,v都會是四個位元組的整數
所以,調用Integer.toHexString(v); 出來的還是32位的字元串

b[i] & 0xFF只是保證了v的前三個位元組是0,只有最後一個位元組有數

閱讀全文

與java十六進制byte相關的資料

熱點內容
阿里雲伺服器終端在哪裡 瀏覽:144
app紙有什麼用 瀏覽:219
cuteftp命令 瀏覽:502
最開始的編程語言是什麼 瀏覽:757
at遠程命令 瀏覽:490
雲伺服器哪家好點 瀏覽:211
android系統源碼閱讀 瀏覽:924
dumpjava分析工具 瀏覽:678
怎麼下載cpu源碼 瀏覽:154
代碼加密怎麼取消 瀏覽:888
編譯原理代碼在哪裡運行 瀏覽:584
解密攝影pdf 瀏覽:72
演算法編程中級題目 瀏覽:250
c語言編譯器畢業設計 瀏覽:717
醫保卡申請app哪個好 瀏覽:945
阿里雲伺服器上傳源碼 瀏覽:602
營銷管理科特勒pdf 瀏覽:696
願望清單app哪個好 瀏覽:461
安卓外放聲音怎麼解決 瀏覽:195
脈脈app干什麼用的 瀏覽:361