Here's some ideas you could adapt:
using System;
using System.Linq;
namespace YourConverionLibrary
{
public static class ConversionExtensions
{
public static byte[] ToByteAry(this string input, bool filterforAlpha = true)
{
if (filterforAlpha)
{
input = new string(input.Where(c => char.IsLetterOrDigit(c) || char.IsWhiteSpace(c)).ToArray());
}
return input.Select(c => (byte) c).ToArray();
}
public static string ToHxFrmBytAry(this byte[] input)
{
return BitConverter.ToString(input);
}
}
}
Sample usage:
var test = "testing 1 2 3 !".ToByteAry().ToHxFrmBytAry();
Console.WriteLine(test);
The string generated:
74-65-73-74-69-6E-67-20-31-20-32-20-33-20
note the final ! char is excluded, but the final space is included.