Оператор XOR для значений, заданных строками - C#
Формулировка задачи:
Ребята помогите работать с бинарним кодом Вопрос такой
Допустим у меня есть несколько строки с бинарним цифрами
string s1="01110101110101101";
string s2="01011110110110100";
string s3="10111010010010110";
Мне нужен часть кода которое будет сделать ее бинарним и считать это s1^s2^s3 где это ^ - модуль 2 XOR битовоя операция
в маем случае код должен считать это
01110101110101101^01011110110110100^10111010010010110
Длина всех строк равна. Помогите разбираться Пожалуйста
Можно хотя бы функцию какое то которое получает 2 такие строки считатет их ^ XOR а потом возвращает такое же строка
Решение задачи: «Оператор XOR для значений, заданных строками»
textual
Листинг программы
static string StringToBinary(string text)
{
byte[] buf = Encoding.UTF8.GetBytes(text);
var sb = new StringBuilder(buf.Length*8);
for (int i=0; i<buf.Length; i++) sb.Append(Convert.ToString(buf[i],2).PadLeft(8, '0'));
return sb.ToString();
}
static string BinaryToString(string binary)
{
var buf = new byte[binary.Length/8];
for (int i=0; i<buf.Length; i++)
{
buf[i] = Convert.ToByte(binary.Substring(i<<3,8), 2);
}
return Encoding.UTF8.GetString(buf);
}