用以上方法可以把byte数组转为字符串. 请问如何把String转回byte 数组???? public String byte2hex(byte[] b)
{
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++)
{
stmp = (Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1)
{
hs = hs + "0" + stmp;
} else
{
hs = hs + stmp;
}
}
return hs;
}
{
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++)
{
stmp = (Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1)
{
hs = hs + "0" + stmp;
} else
{
hs = hs + stmp;
}
}
return hs;
}
a.getBytes();
public String byte2hex(byte[] b)
{
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++)
{
stmp = (Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1)
{
hs = hs + "0" + stmp;
} else
{
hs = hs + stmp;
}
}
return hs;
}
String str=new String(buffer);
这样不就可以实现字节数组和字符串的转换了么?
byte []buf= str.getBytes();
change String to byte.
public byte[] Tobyte(String st) //st为你从byte[]转换后的String
{
int len=st.length();
byte[] b=new byte[len/2];
if(len>0)
{
for(int i=0;i<len;i=i+2)
{
b[i/2]=(byte)Integer.parseInt(st.substring(i,i+2),16);
}
}
return b;
}
int length = hex.length() / 2 + hex.length() % 2;
byte[] result = new byte[length]; for (int i = 0; i < result.length; i++) {
String sub = hex.substring(i * 2, i * 2 + 2);
result[i] = Byte.parseByte(sub, 16);
}
return result;
}