string binaryMessage = @"01000101 01011000
string result = BinaryToUtf8(binaryMessage);
Console.WriteLine(result);
static string BinaryToUtf8(string binaryInput)
StringBuilder result = new StringBuilder();
StringBuilder currentBinaryChar = new StringBuilder();
foreach (char c in binaryInput)
if (c == ' ' || c == '\n')
if (currentBinaryChar.Length > 0)
string binaryStr = currentBinaryChar.ToString();
while (binaryStr.Length < 8 && binaryStr.Length > 0)
binaryStr = '0' + binaryStr;
if (binaryStr.Length == 8)
int value = Convert.ToInt32(binaryStr, 2);
result.Append((char)value);
currentBinaryChar.Clear();
else if (c == '0' || c == '1')
currentBinaryChar.Append(c);
if (currentBinaryChar.Length > 0)
string binaryStr = currentBinaryChar.ToString();
while (binaryStr.Length < 8 && binaryStr.Length > 0)
binaryStr = '0' + binaryStr;
if (binaryStr.Length == 8)
int value = Convert.ToInt32(binaryStr, 2);
result.Append((char)value);
return result.ToString();