C# 从文本框到值的字节

C# Bytes from Textbox to Value

我有一个带有一个输入文本框、一个按钮和一个输出文本框的 Winform。

现在我的代码按以下方式工作:

我点击按钮,“string value”中的预设字节将被解码为可读文本并使用“string decoding1”输出到输出文本框。

private void button1_Click(object sender, EventArgs e)
    {
        string value = decoding1(new byte[]
            {
                104,
                107,
                102,
                102,
                110,
                103,
                116
            });
    }

    public string decoding1(byte[] byte_0)
    {
        textBox2.Text = Encoding.UTF8.GetString(decoding2(byte_0));
        return Encoding.UTF8.GetString(decoding2(byte_0));
    }

但现在我希望能够将这些字节“104, 107,...”输入到输入文本框中,以便程序解码并输出它们,否则我将不得不手动将不同的字节输入到源代码中每一次,这对我来说都是浪费时间。

我该如何处理,非常感谢您的帮助。

您可以使用单行 TextBox 并用逗号分隔“字节”,或者使用多行 TextBox 并且每行一个“字节”。任何你能想到的分隔符都可以,可能。

然后,使用 byte.Parse() 方法将这些字节数转换为实际字节数。代码可能是这样的:

string[] splittedBytes = txtInputBytes.Text.Split(',');
byte[] bytes = splittedBytes.Select(byte.Parse).ToArray();
MessageBox.Show(Encoding.UTF8.GetString(bytes));

Split() 方法将在每个分隔符处“打断”输入,在此示例中为逗号。下一行将输入的这些部分转换为实际字节,使用 Select Linq 方法将 byte.Parse() 应用于每个输入元素。您还可以使用 for 语句或任何其他方式。然后将字节解码为实际的字符串并显示它。