使用大字节数组的C#程序性能

本文关键字:程序 程序性 性能 数组 字节 字节数 | 更新日期: 2023-09-27 18:28:36

我正在尝试用C#创建一个简单的十六进制编辑器。为此,我将文件写入一个字节数组,它运行良好。但是,一旦我以字符串的形式将字节输出到Textbox,程序的整体性能就会变得非常糟糕。例如,一个190kb的文件大约需要40秒,直到它显示在文本框中。而程序没有响应。

功能:

void open()
    {
        fullstring = "";
        OpenFileDialog op = new OpenFileDialog();
        op.ShowDialog();
        file = op.FileName;
        byte[] fileB = File.ReadAllBytes(file);
        long b = fileB.Length;
        for (int i = 0; i < fileB.Length; i++)
        {
            fullstring = fullstring + fileB[i].ToString("X") + "  ";
        }
        textBox9.Text = fullstring;
    }

有没有办法提高这个功能的性能?

使用大字节数组的C#程序性能

看看这篇文章如何将字节数组转换为十六进制字符串,反之亦然?您可以使用那里的代码将字节数组输出到文本文件。代码中的一个问题是使用字符串串联而不是StringBuilder。最好使用StringBuilder,否则性能会下降。