1

我有一个名为 list 的 araylist 对象,在这里我想将我的 arraylist 对象转换为 byte [],同时执行以下编码它给出一个错误:“源数组中的至少一个元素无法转换为目标数组类型”我的编码:

 byte[] obj= new byte[list.Count];
     list.CopyTo(obj); 

在这里,我的数组列表对象从 ssrs 报告返回报告数据。我想在这里做什么来解决这个问题。

4

2 回答 2

3

看看这个(这会告诉你哪里可能有问题)

        List<object> list = new List<object>();
        list.Add((byte)1);
        list.Add((byte)0);
        list.Add("wtf");
        list.Add((byte)1);
        byte[] obj = list.OfType<byte>().ToArray();
        if(obj.Length!=list.Count)
        {
            //Exception, not all objects in list is 'byte'
        }
于 2012-05-14T07:07:10.350 回答
1

如果您的意思是 ArrayList 包含类型的项目,请byte使用以下语法:

byte[] obj = (byte[])list.ToArray(typeof(byte));

否则你想要什么不清楚,因为对象不能像那样转换为字节,所以请更好地解释。

于 2012-05-14T06:29:03.040 回答