Как да превърнем Hex към ASCII в Java


Това е пример с java за това как да превърнем Hex към ASCII . Процесът на преработване зависи от тази формула

“Hex<==>Decimal<==>ASCII“.

ASCII към Hex – Пробразува String към char масив, след това към integer(decimal) следван от Integer.toHexString за да го превърне в Hex стойност.
Hex към ASCII – Изрязва Hex стойността по двоен формат, превръщаме го към корен 16 interger(decimal) Integer.parseInt(hex, 16), и го връщаме към char.

Пример

public class StringToHex{
 
  public String convertStringToHex(String str){
 
	  char[] chars = str.toCharArray();
 
	  StringBuffer hex = new StringBuffer();
	  for(int i = 0; i < chars.length; i++){
	    hex.append(Integer.toHexString((int)chars[i]));
	  }
 
	  return hex.toString();
  }
 
  public String convertHexToString(String hex){
 
	  StringBuilder sb = new StringBuilder();
	  StringBuilder temp = new StringBuilder();
 
	  //49204c6f7665204a617661 се превръща в двучислен 49, 
	  for( int i=0; i<hex.length()-1; i+=2 ){
 
	      //Взима hex по двойки
	      String output = hex.substring(i, (i + 2));
	      //Превръща hex в decimal
	      int decimal = Integer.parseInt(output, 16);
	      //Превръща decimal в character
	      sb.append((char)decimal);
 
	      temp.append(decimal);
	  }
	  System.out.println("Decimal : " + temp.toString());
 
	  return sb.toString();
  }
 
  public static void main(String[] args) {
 
	  StringToHex strToHex = new StringToHex();
	  System.out.println("\n***** Convert ASCII to Hex *****");
	  String str = "I Love Java!";  
	  System.out.println("Original input : " + str);
 
	  String hex = strToHex.convertStringToHex(str);
 
	  System.out.println("Hex : " + hex);
 
	  System.out.println("\n***** Convert Hex to ASCII *****");
	  System.out.println("Hex : " + hex);
	  System.out.println(
"ASCII : " + strToHex.convertHexToString(hex));
  }
}

Извежда

***** Convert ASCII to Hex *****
Original input : I Love Java!
Hex : 49204c6f7665204a61766121

***** Convert Hex to ASCII *****
Hex : 49204c6f7665204a61766121
Decimal : 7332761111181013274971189733
ASCII : I Love Java!

Popularity: 1% [?]

No related posts.

Related posts brought to you by Yet Another Related Posts Plugin.

You can leave a response, or trackback from your own site.

One Response to “Как да превърнем Hex към ASCII в Java”

  1. Ebonie Moorehead казва:

    I really liked reading your post!. Quallity content. With such a valuable blog i believe you deserve to be ranking even higher in the search engines :) . Check out the link in my name. That links to a tool that really helped me rank high in google. This way even more people can enjoy your posts and nothing beats a big audiance ;)

Leave a Reply

Задвижван с помощта на WordPress | Compare Cell Phone Plans at iCellPhonePlans.com | Thanks to Cheap Palm Pixi, Bromoney and Wordpress Themes