Wednesday, December 19, 2012

C# Convert Ascii string to Hex string vice versa

Convert Ascii to Hex method
 
public string ConvertAsciiToHex(string asciiString)
{
    string hex = "";
    foreach (char c in asciiString)
    {
       int tmp = c;
       hex += String.Format("{0:X2}", (uint)System.Convert.ToUInt32(tmp.ToString()));
    }
    return hex;
}
Convert Hex to Ascii method
 
public string ConvertHextoAscii(string HexString)
{
    string asciiString = "";
    for (int i = 0; i < HexString.Length; i += 2)
    {
       if (HexString.Length >= i + 2)
       {
          String hs = HexString.Substring(i, 2);
          asciiString = asciiString + System.Convert.ToChar(System.Convert.ToUInt32(HexString.Substring(i, 2), 16)).ToString();
       }
    }
    return asciiString;
}

2 comments:

  1. A better Hex to Ascii conversion function.

    private static string ConvertHextoAscii(string HexString)
    {
    string asciiString = "";

    int i = 0;
    int maxTranslationIndex = (HexString.Length);

    while (i < maxTranslationIndex)
    {
    //Convert the 2 characters at the current index in the index in our input string……
    string hs = System.Convert.ToChar(System.Convert.ToUInt32(HexString.Substring(i, 2), 16)).ToString();
    asciiString = asciiString + hs;
    i += 2;
    }

    return asciiString;
    }

    ReplyDelete
  2. Is there any way to string the HexString without doing "(string HexString)" ? It won't work for me ...

    ReplyDelete