用多个字节[]s填充一个字节[]

本文关键字:字节 一个 填充 | 更新日期: 2023-09-27 18:01:04

我创建了一个应用程序,在SQLiteDatabase中存储字节数组。该应用程序还每隔"x"秒从数据库中选择字节数组。

我的应用程序的数据流如下:

应用程序->SQLiteDatabase->应用程序

我的问题是:

如何用来自SQLiteDatabase的所有传入字节数组填充一个字节数组?

例如:

Byte[] Data;

需要用以下字节数组填充:

Byte[] IncomingData;

IncomingData不断由SQLiteDatabase填充。

数据需要经常用IncomingData填充。

有人能帮我吗?

用多个字节[]s填充一个字节[]

只需使用Concat:

data1.Concat(IncomingData);

您需要添加System.Linq命名空间引用。

您可以采取以下几种方法。

  1. 使用List<byte>List.AddRange
  2. 使用LINQ的Enumerable.Concat
  3. 使用Array.Copy并手动完成所有操作

在这三个中,如果可能的话,使用List,因为它(可能(会减少所需的阵列复制量。这就是List的用途,它们在幕后使用一个具有一定容量的数组,从4开始,达到容量时会翻倍。甚至可以使用list.Capacity属性或采用int的构造函数将容量设置为某个大数字,就像使用数组一样。您总是可以使用List.ToArray将列表带回。

可枚举。Concat可能只创建一个最小大小的数组,这意味着每次获得更多的byte s时都需要创建一个新的数组。