C# int64 列表到字节数组,反之亦然

作者:编程家 分类: arrays 时间:2025-10-09

# 将C# Int64列表转换为字节数组及反向操作的实现

在C#编程中,经常会遇到将Int64类型的数据转换为字节数组的需求,同时也可能需要将字节数组反向转换为Int64列表。这样的转换在网络通信、数据存储等场景中非常常见。本文将介绍如何在C#中实现这两种转换操作,并提供相应的代码示例。

## 将Int64列表转换为字节数组

首先,让我们来看如何将Int64列表转换为字节数组。这个过程涉及到将每个Int64类型的元素转换为字节数组,并将这些字节数组拼接在一起。在C#中,可以使用`BitConverter`类来完成这个任务。

csharp

List int64List = new List { 1234567890123456789, 9876543210987654321 };

List byteArray = new List();

foreach (long number in int64List)

{

byteArray.AddRange(BitConverter.GetBytes(number));

}

上述代码首先创建了一个包含Int64类型数据的列表`int64List`,然后使用`BitConverter.GetBytes`方法将每个Int64类型的数据转换为字节数组,最后通过`AddRange`方法将这些字节数组追加到目标列表`byteArray`中。

## 字节数组转换为Int64列表

反向操作就是将字节数组转换回Int64列表。同样,我们需要将字节数组按照Int64类型的大小拆分,并逐个转换为Int64类型的数据。

csharp

List resultInt64List = new List();

for (int i = 0; i < byteArray.Count; i += 8)

{

resultInt64List.Add(BitConverter.ToInt64(byteArray.ToArray(), i));

}

这段代码中,我们使用了`BitConverter.ToInt64`方法,将字节数组的每个片段转换为Int64类型的数据,并添加到`resultInt64List`列表中。需要注意的是,这里的步进值为8,因为一个Int64类型的数据占用8个字节。

通过这两组代码,你可以在C#中轻松实现Int64列表到字节数组的转换以及反向操作。这样的转换对于涉及二进制数据传输或存储的应用程序非常有用。希望这些示例能帮助你更好地处理类似的需求。