When you need byte[]
to String
, use new String(yourArray)
When you need String
to byte[]
, use yourString.getBytes()
String hello = "hello";
byte[] bytes = hello.getBytes();
String byteString = new String(bytes);
System.out.println("byteString: " + byteString); // byteString: hello
byte[] newArray = byteString.getBytes();
String otherString = new String(newArray);
System.out.println("otherString: " + otherString); // otherString: hello
The "toString()" of byte array is the "toString()" inheritance from Object.
The method is:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
So, it is the reason for... if you call: yourArray.toString()
returns something like [B@dcf3e99