Mobile/Android

[Android, Java] String to hex to byte array to Stirng.

out of coding 2017. 1. 23. 11:42

Android (Java) String to hex to byte array to Stirng의 예제이다.

많이 사용하지는 않지만 필요하기는 하기에 ㅋㅋ


String plainText = "Android";  

System.out.println("Plain Text : " + plainText);  

  

// String to byte array

byte[] byteArrayForPlain = plainText.getBytes();  

String hexString = "";  

for (byte b : byteArrayForPlain) {  

    hexString += Integer.toString((b & 0xF0) >> 4, 16);  

    hexString += Integer.toString(b & 0x0F, 16);  

}  

System.out.println("Hex String : " + hexString);

  

// Hex String to byte array

byte[] bytes = new BigInteger(hexString, 16).toByteArray();  

System.out.println("Byte Array : " + bytes);  

  

// byte array -> Hex String  

String hexForArray = new BigInteger(bytes).toString(16);  

System.out.println("Hex String : " + hexForArray);  

  

// Hex string -> String  

byte[] hexBytes = new byte [hexForArray.length() / 2];  

int j = 0;  

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

    hexBytes[j++] = Byte.parseByte(hexForArray.substring(i, i + 2), 16);  

}  


String stringForHexBytes = new String(hexBytes);  

System.out.println("Plain String :" + stringForHexBytes);