C# 将文本转换为二进制,并使用XOR运算符按键添加

C# 将文本转换为二进制,并使用XOR运算符按键添加,c#,visual-studio,xor,C#,Visual Studio,Xor,我将文本和键从字符串转换为二进制。现在我想使用XOR运算符添加这两行 例如(苹果是文本,2是键;然后(A XOR 2,p XOR 2,p XOR 2,l XOR 2,e XOR 2) 我是C#的新手 您需要停止使用StringBuilder。在XOR之后,它不再是可以存储在字符串中的文本。生成一个字节[]为了取得成功。你应该如何呈现它并不明显,请查看作业。如果这应该是真正的加密,那么千万不要使用如此容易破解的加密。@HansPassant你有什么解决方案吗?请帮帮我。我是C#新手。我不知道你为什

我将文本和键从字符串转换为二进制。现在我想使用XOR运算符添加这两行

例如(苹果是文本,2是键;然后(A XOR 2,p XOR 2,p XOR 2,l XOR 2,e XOR 2)

我是C#的新手


您需要停止使用StringBuilder。在XOR之后,它不再是可以存储在字符串中的文本。生成一个字节[]为了取得成功。你应该如何呈现它并不明显,请查看作业。如果这应该是真正的加密,那么千万不要使用如此容易破解的加密。@HansPassant你有什么解决方案吗?请帮帮我。我是C#新手。我不知道你为什么需要编写此代码。谷歌“C#encrypt text”了解如何安全正确地执行此操作。
private void button1_Click(object sender, EventArgs e)
    {
        string Slovo = textBox1.Text;

        StringBuilder sb = new StringBuilder();

        foreach (byte b in System.Text.Encoding.UTF8.GetBytes(Slovo))
            sb.Append(Convert.ToString(b, 2).PadLeft(8, '0')).Append(' ');

        string binary1 = sb.ToString();

        MessageBox.Show(binary1);

        string Kluch = textBox2.Text;

        StringBuilder sc = new StringBuilder();

        foreach (byte c in System.Text.Encoding.UTF8.GetBytes(Kluch))
            sc.Append(Convert.ToString(c, 2).PadLeft(8, '0')).Append(' ');

        string binary2 = sc.ToString();

        MessageBox.Show(binary2);

        int a = Convert.ToInt32(binary1); //System.FormatException: 'Additional non-parsable characters are at the end of the string.'
        int d = Convert.ToInt32(binary2); //System.FormatException: 'Additional non-parsable characters are at the end of the string.'
        int sum = a ^ d;
        MessageBox.Show(sum.ToString());
    }