给定一个只读的整数集合,我如何将它转换为字节数组?
ReadOnlyCollection<int> collection = new List<int> { 118,48,46,56,46,50 }.AsReadOnly(); //v0.8.2
将“collection”转换为 byte[] 的优雅方式是什么?
最佳答案
您可以使用 LINQ 的 Select
从 int
转换每个元素的方法至 byte
.
这会给你一个 IEnumerable<byte>
.然后您可以使用 ToArray()
将其转换为 byte[]
的扩展方法.
collection.Select(i => (byte)i).ToArray();
如果您不想使用 LINQ,那么您可以实例化数组并使用 for 循环遍历集合,为数组中的每个值赋值。
var byteArray = new byte[collection.Count];
for (var i = 0; i < collection.Count; i++)
{
byteArray[i] = (byte)collection[i];
}
关于C# 将 ReadOnlyCollection<int> 转换为 byte[] 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49421347/