byte ---> hex String

public static String byte2HexString(byte[] b){
        String ret = "";
        for(int i=0;i<b.lenght;i++){
                   String hex = Integer.toHexString(b[i]&0XFF);
                   if(hex.length()==1){
                               hex = ‘0‘+hex;
                   }
                       ret+=hex.toUpperCase();
    }
               return ret;
}    

1  1个字节8位          1个BYTE与上2个hex字符
  1 个HEX字符4位

2 Integer.toHexString(int ---);

作用 int(十进制有符号)  ---> String (十六进制)

3 byte ==>int

byte b;

int i=b&0Xff;

分析 :byte -->8 位 int 32位

byte转int位数不够要补位 补位有偏差 故需要清零多出的高24位 即与上0xFF

补码:

1111 1111

[ 1111 1111 ] [ 1111 1111 ] [ 1111 1111 ] [1111 1111]

0XFFFF FFFF与上0Xff高24位清零

&与

1&1 -->1

1&0 -->0

0&1 -->0

0&0 --->0

两边都成立才可以为真

1|1 -->1
1|0 -->1
0|1 -->1
0|0 -->0
两边只有一方成立即可

byte b = 24;

int i = b&FF; 清零高24位

-2

字节       1111 1110 补码

字 1111 1111  1111 1110 补码

字节       1000 0010 源码

字   0000 0000  1000 0010 源码

            二进制      十进制

1B byte = 8 bit    1B = 8bit    1B=8bit

1 KB =1024B     1KB= 2^10B   1KB = 10^3B 

1MB =1024kb      1MB = 2^20B  1MB=10^6b

1GB = 1024mb    1GB = 2^30B    1GB = 10^9B

1TB = 1024GB    1TB= 2^40B      1TB= 10^12B

1024          2^10      10^3

hex string  == byte

1 hex string  -- integer    Integer i = Integer.parseInt("EA",16);

2 integer -- byte        Byte b = i.byteValue();

Byte HexString        byte b = -22;

1 byte -->integer        Integer i = b.intValue();

2 integer -->string       String newII = Integer.toHexString(ii).subString(6,8);

时间: 2025-01-02 16:10:10

byte ---> hex String的相关文章

byte[] 转Hex String

一.一个字符串转byte数组怎么转? byte[] byteArray = String.getBytes(); 二.又想把生成的数组转回字符串怎么办? String covertString = new String(byteArray); 以上的轻松愉快仅限于字符串之间互转(适当的时候还要注意编码格式). 三.如果一个的数值byte[]数组怎么转成字符串?例如: byte[] byteArray = new byte[]{-60,60}; 如果用new String(byteArray)直接

C#中的Byte,String,Int,Hex之间的转换函数。

/// <summary> Convert a string of hex digits (ex: E4 CA B2) to a byte array. </summary> /// <param name="s"> The string containing the hex digits (with or without spaces). </param> /// <returns> Returns an array of

[转] java byte[] hex打印

import javax.xml.bind.DatatypeConverter; import java.io.UnsupportedEncodingException; public class test { public static void main(String[] args) throws UnsupportedEncodingException{ //print hex string version of HELLO WORLD byte[] helloBytes = "HELLO

C# Byte[] 转String 无损转换

转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// string 转成byte[] /// </summary> /// <param name="hexString"></param> /// <returns>byte[]</returns> private byte[] strToToHexByte(string hexString) { hexS

C# byte[]与char[]、string与char[]、byte[] 与 string 互转

1. byte array -> char array Byte[] b=new byte[5]{0x01,0x02,0x03,0x04,0x05}; Char[] c=Encoding.ASCII.GetChars(b); 2. char array -> byte array Char[] c=new char[5]{a,b,c,d,e}; Byte[] b=Encoding.Default.GetBytes(c); Char[] c=new char[5]{a,b,c,d,e}; Byt

how convert large HEX string to binary array ?

how convert large HEX string to binary I have a string with 14 characters . This is a hex represantation of 7bytes. I want to convert it to binary. int32_t Hex2Bin( uint8_t * pHexString, uint8_t * pBinArray ) { int o = 0; int i = 0; while ( pHexStrin

[转]关于网络通信,byte[]和String的转换问题

最近的项目中要使用到把byte[]类型转换成String字符串然后通过网络发送,但发现发现出去的字符串和获取的字符串虽然是一样的,但当用String的getBytes()的方法得到的byte[]跟原来的byte[]是不一样的. 看如下代码: bytebytes[] = new byte[] { 50, 0, -1, 28, -24 }; String string = new String(bytes); byte[] ret = string.getBytes(); 查看ret的数据发现是50

数组Byte [] 和 string 相互转换

using System; using System.Collections.Generic; using System.Text; namespace NET.MST.Fourth.StringByte { class StringByte { static void Main(string[] args) { String s = "我是字符串,I am string"; //字节数组转换到字符串 Byte[] utf8 = StringToByte(s, Encoding.UTF

C#将byte[]转换为string

A. 首先列出网上搜索的一些信息: 方法1: System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding(); byte[] inputBytes =converter.GetBytes(inputString); string inputString = converter.GetString(inputBytes); 方法2: string inputString = System.Convert.ToBas