From 06e7facc846ed655c4b8d23b2b7cca919f371238 Mon Sep 17 00:00:00 2001 From: Shubham Aggarwal Date: Sat, 29 Oct 2016 16:29:14 +0530 Subject: [PATCH] Added HexToAscii example. --- .../com/baeldung/hextToAscii/HexToAscii.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 core-java/src/main/java/com/baeldung/hextToAscii/HexToAscii.java diff --git a/core-java/src/main/java/com/baeldung/hextToAscii/HexToAscii.java b/core-java/src/main/java/com/baeldung/hextToAscii/HexToAscii.java new file mode 100644 index 0000000000..a3e0dd431d --- /dev/null +++ b/core-java/src/main/java/com/baeldung/hextToAscii/HexToAscii.java @@ -0,0 +1,38 @@ +package com.baeldung.hexToAscii; + +public class HexToAscii { + + public static void main(String[] args) { + + String demoString = "http://www.baeldung.com/jackson-serialize-dates"; + + System.out.println("Original statement: " + demoString); + + String hexEquivalent = asciiToHex(demoString); + System.out.println("Hex equivalent: " + hexEquivalent); + + String asciiEquivalent = hexToASCII(hexEquivalent); + System.out.println("Ascii equivalent: " + asciiEquivalent); + } + + private static String asciiToHex(String asciiStr) { + + char[] chars = asciiStr.toCharArray(); + StringBuilder hex = new StringBuilder(); + for (char ch : chars) { + hex.append(Integer.toHexString((int) ch)); + } + + return hex.toString(); + } + + private static String hexToASCII(String hexStr) { + + StringBuilder output = new StringBuilder(""); + for (int i = 0; i < hexStr.length(); i += 2) { + String str = hexStr.substring(i, i + 2); + output.append((char) Integer.parseInt(str, 16)); + } + return output.toString(); + } +}