using System.Collections.Generic;
public static string ToHexString(string str)
var sb = new StringBuilder();
var bytes = Encoding.Unicode.GetBytes(str);
sb.Append(t.ToString("X2"));
public static string FromHexString(string hexString)
var bytes = new byte[hexString.Length / 2];
for (var i = 0; i < bytes.Length; i++)
bytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);
return Encoding.Unicode.GetString(bytes);
public static string ToHexNumber(string text)
var hexNumber = string.Empty;
var bytes = Encoding.Default.GetBytes(text);
var hexString = BitConverter.ToString(bytes);
var hexValues = hexString.Split('-');
foreach (var hex in hexValues)
var value = Convert.ToInt32(hex, 16);
public static string FromHexNumber(string hexString)
var num = uint.Parse(hexString, System.Globalization.NumberStyles.AllowHexSpecifier);
var floatVals = BitConverter.GetBytes(num);
var f = BitConverter.ToSingle(floatVals, 0);
Console.WriteLine("float convert = {0}", f);
public static void Main()
var text = "Hello world";
var hexString = ToHexString(text);
Console.WriteLine("text --> hex: " + hexString);
text = FromHexString(hexString);
Console.WriteLine("hex --> text: " + text);
var hexNumber = ToHexNumber(text);
Console.WriteLine("text --> hex number: " + hexNumber);
text = FromHexNumber(hexNumber);
Console.WriteLine("hex number --> text: " + text);